diff options
author | John Baldwin <jhb@FreeBSD.org> | 2017-06-28 09:53:06 -0700 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2017-07-07 16:05:47 -0700 |
commit | 929edea98d27cf9d72305c1584ee77627da7fa96 (patch) | |
tree | 011d2a1dc33fc3cf74e3ce9df94e857c4fa60c31 /gdb/ChangeLog | |
parent | 762c974a09746bda8a5d64ed3ee887adeae742b9 (diff) | |
download | gdb-929edea98d27cf9d72305c1584ee77627da7fa96.zip gdb-929edea98d27cf9d72305c1584ee77627da7fa96.tar.gz gdb-929edea98d27cf9d72305c1584ee77627da7fa96.tar.bz2 |
Fetch signal information for native FreeBSD processes.
Use the `pl_siginfo' field in the `struct ptrace_lwpinfo' object returned
by the PT_LWPINFO ptrace() request to supply the current contents of
$_siginfo for each thread. Note that FreeBSD does not supply a way to
modify the signal information for a thread, so $_siginfo is read-only for
FreeBSD.
To handle 32-bit processes on a 64-bit host, define types for 32-bit
compatible siginfo_t and convert the 64-bit siginfo_t to the 32-bit
equivalent when supplying information for a 32-bit process.
gdb/ChangeLog:
* fbsd-nat.c [PT_LWPINFO && __LP64__] (union sigval32)
(struct siginfo32): New.
[PT_LWPINFO] (fbsd_siginfo_size, fbsd_convert_siginfo): New.
(fbsd_xfer_partial) [PT_LWPINFO]: Handle TARGET_OBJECT_SIGNAL_INFO
via ptrace(PT_LWPINFO).
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r-- | gdb/ChangeLog | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d5afead..1809eba 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,13 @@ 2017-07-07 John Baldwin <jhb@FreeBSD.org> + * fbsd-nat.c [PT_LWPINFO && __LP64__] (union sigval32) + (struct siginfo32): New. + [PT_LWPINFO] (fbsd_siginfo_size, fbsd_convert_siginfo): New. + (fbsd_xfer_partial) [PT_LWPINFO]: Handle TARGET_OBJECT_SIGNAL_INFO + via ptrace(PT_LWPINFO). + +2017-07-07 John Baldwin <jhb@FreeBSD.org> + * fbsd-tdep.c (fbsd_gdbarch_data_handle, struct fbsd_gdbarch_data) (init_fbsd_gdbarch_data, get_fbsd_gdbarch_data) (fbsd_get_siginfo_type): New. |