non port: devel/gdb/files/kgdb/i386fbsd-kern.c |
Number of commits found: 13 |
Friday, 17 Mar 2023
|
23:47 John Baldwin (jhb)
devel/gdb: Upgrade to 13.1.
Reviewed by: pizzamig (maintainer)
Differential Revision: https://reviews.freebsd.org/D38759
27ee37a |
Monday, 20 Sep 2021
|
20:46 John Baldwin (jhb)
devel/gdb: Update to 11.1.
This also pulls in some updates to libcxx-gdbpy to add pretty printers
for std::deque<>, std::stack<>, and std::unordered_map<>
Reviewed by: pizzamig (maintainer)
Differential Revision: https://reviews.freebsd.org/D32000
242d369 |
Tuesday, 6 Apr 2021
|
14:31 Mathieu Arnold (mat)
all: Remove all other $FreeBSD keywords.
135fdee |
Friday, 4 Dec 2020
|
23:19 pizzamig
devel/gdb: Update to 10.1
Reviewed by: jhb@
Differential Revision: https://reviews.freebsd.org/D27040
|
Monday, 9 Mar 2020
|
20:58 jhb
Update to GDB 9.1.
GDB 9 rejects attempts to build in the source tree, so this uses
CONFIGURE_OUTSOURCE.
Some patch files were renamed to track moving of files in upstream.
Approved by: pizzamig (maintainer)
Differential Revision: https://reviews.freebsd.org/D23932
|
Monday, 24 Sep 2018
|
17:23 jhb
Upgrade to 8.2.
- Remove patches for upstream commits in 8.2.
- Add an upstream patch to include NT_PROCSTAT_AUXV, NT_PROCSTAT_PS_STRINGS,
and NT_PROCSTAT_VMMAP notes in core dumps generated by 'gcore'.
- Update kgdb for changes in 8.2.
- Add 'USES=gettext-runtime'
Reviewed by: pizzamig (maintainer)
Differential Revision: https://reviews.freebsd.org/D17085
|
Wednesday, 25 Jul 2018
|
17:28 jhb
Fixes for kgdb including initial FreeBSD/arm support.
- Improve fallback handling for the read of pcb_size.
If for some reason kgdb has only the kernel's debug info, a read of
pcb_size will simply return 0, resulting in an exception when unwinding
the stack of a thread that was on a CPU at the time the dump was
created. In this case, fall back to using sizeof(struct pcb).
- Always supply a value for the PC register on x86.
A thread's PCB may have been swapped out, and a dummy value ensures that
we don't get an exception while enumerating threads in a dump.
- Mark all 64-bit address bits as valid for aarch64 kernels.
ARMv8 supports pointer tagging in which case the upper 8 bits of VAs are
ignored, but FreeBSD kernels are linked such that they depend on those
upper 8 bits being set to 1. GDB was stripping those bits by default
causing KVAs to be mapped to invalid addresses.
- Rework kgdb -w support to only open /dev/mem writable.
Don't depend on the gdb global 'write_files' option which tries to
rewrite the kernel binary on close which can crash. Instead, add an
optional '-w' flag to 'target vmcore' which opens the vmcore with
O_RDWR instead of O_RDONLY. Change the kgdb '-w' option to set this
flag in the nested 'target vmcore' command rather than passing the
global '-w' option to gdb.
- Garbage collect old code for reading dumptid.
- First cut at FreeBSD/arm kernel support.
Tested on live kernel on my RPi, but not against a crashdump, and only
trapframes from userland, not a nested trap.
Submitted by: markj (1, 2)
Approved by: kan
Differential Revision: https://reviews.freebsd.org/D16013
|
Wednesday, 14 Mar 2018
|
14:33 pizzamig
devel/gdb: Update to version 8.1
The official annoucement is available here:
https://www.gnu.org/software/gdb/download/ANNOUNCEMENT
Moreover:
* support for 'info proc' is added (jhb@)
* update kgdb to use gdb 8.1
Reviewed by: jhb@
Differential Revision: https://reviews.freebsd.org/D14148
|
Friday, 28 Jul 2017
|
21:20 jhb
Upgrade to GDB 8.0.
- Commit b5430a3ced fixes parsing of 32-bit MIPS process cores.
- kgdb has been ported to 8.0 including renaming the new OSABI constant,
using gdb_bfd_openr, new return type of ldirname, and solib_add
changed.
- GDB 8.0 requires C++11, however the port is marked as requiring C++14
as a workaround for bugs in clang 10.3.
- patch-armfbsd is updated for the new OSABI constant names (a.out was
removed in 8.0) and new filename convention (arm-fbsd-*)
- patch-gdb-amd64-bsd-nat.c (renamed from patch-gdbamd64-bsd-nat.c) is
simplified to just store the r_flags value before collecting registers
from the register cache rather than a full copy of the entire register
set.
- patch-gdb-corelow.c has been removed. It isn't really correct and if
arm cores still cause core dumps the error is in arm-fbsd-tdep.c.
- patch-gdb-i386-fbsd-nat.c renamed to account for rename of patched
file.
- patch-gdb-x86bsd-nat.c has been removed. The file was renamed, but the
stock file also compiled fine for me on i386.
PR: 221025 (exp-run for 10.3)
Submitted by: luca.pizzamiglio@gmail.com (original version)
Reviewed by: luca.pizzamiglio@gmail.com (maintainer)
Approved by: brooks
Differential Revision: https://reviews.freebsd.org/D11465
|
Sunday, 18 Dec 2016
|
16:08 tijl
Update to 7.12.
PR: 214927
Submitted by: luca.pizzamiglio@gmail.com (maintainer)
|
Wednesday, 27 Apr 2016
|
16:11 jhb
Fix an issue with gdb triggering assertions in kgdb on i386.
The kgdb targets use runtime assertions on native targets to verify
that the helper arrays documenting the layout of things like the PCB
and trapframe structures match. Ideally these asserts would be
compile time assertions, but they cannot be checked at compile time.
Instead, they are checked at runtime during gdb startup.
However, the layout of the i386 PCB changed when the AVX changes were
merged to i386. The constants in the i386 target assume the post-AVX
layout, but gdb packages on stable branches might be built against
pre-AVX worlds. In that case, those gdb binaries will trigger these
assertions on every invocation.
As a workaround, disable the PCB-related assertions on pre-AVX worlds.
If kgdb is run against a pre-AVX kernel it will not be able to parse
the PCB correctly, but userland debugging should work fine. kgdb
built against a pre-AVX world but run against an AVX kernel should
work fine.
PR: 209061
Reported by: trasz
Approved by: luca.pizzamiglio@gmail.com (maintainer), swills
|
Monday, 11 Jan 2016
|
17:36 jhb
Various fixes to kgdb. Port revision bumped since kgdb is enabled by
default.
- kgdb -n now permits any valid string to be used instead of only
permitting numbers. In particular, this allows 'kgdb -n last' to be
used to open the most recent vmcore.
- kgdb will now try to determine the list of kernel modules even if the
kernel binary does not include debug symbols. This works fine in kernels
that have the changes in r290728.
- Mark trapframes as "signal trampoline frames". GDB assumes that "normal"
frames will never call into a NULL PC. Instead, it assumes that calling a
NULL PC will result in an exception (and thus a signal being posted
resulting in a signal frame). A trap for a NULL function pointer would
thus stop unwinding once it hit the frame with a NULL PC. Marking the
trapframes as a signal frame tells GDB it is ok to unwind past a NULL PC.
One side effect is that frames in the asm handler now display as "signal
handler called" instead of the raw line in assembly. Perhaps at some
point it would be nice to mark these up the way ddb does with the trap
number, etc. but GDB's stack code doesn't support custom frame printers.
PR: 206044
Reviewed by: luca.pizzamiglio@gmail.com (maintainer)
Approved by: koobs
|
Tuesday, 6 Oct 2015
|
18:52 jhb
Add a new KGDB option to the devel/gdb port. This adds a forward port
of the kernel-specific bits of kgdb to recent gdb. It only supports
amd64, i386, powerpc, powerpc64, and sparc64.
PR: 203299
Reviewed by: bdrewery
Glanced at by: emaste, jilles, luca.pizzamiglio@gmail.com (maintainer)
Differential Revision: https://reviews.freebsd.org/D3727
|
Number of commits found: 13 |