This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 0/8] Add support for $_siginfo on FreeBSD


On 6/29/17 7:32 PM, John Baldwin wrote:
> This series adds support for $_siginfo for both live processes and
> process cores.  siginfo_t for threads is only stored in a per-thread
> ELF core note on FreeBSD 12.0 and later.
> 
> The existing code in corelow.c for siginfo_t assumed the Linux-specific
> NT_SIGINFO ELF core note, but FreeBSD stores siginfo as one member of a
> larger ELF core note.  To accomodate this, I added a new gdbarch method
> that is used to fetch the signal information from a core dump.  I moved
> the body of the existing core_get_siginfo function into an implementation
> of the new gdbarch method in linux-tdep.c.
> 
> Tested on FreeBSD/amd64 (64-bit and 32-bit binaries), FreeBSD/i386,
> and Centos/x86-64 (no regressions in test suite for this last).

Ping?  The binutils patches (6 and 7) have been approved, but some of the
GDB patches (3 and 4) are not FreeBSD-specific (e.g. a new gdbarch method
for fetching siginfo from a core).

> John Baldwin (8):
>   Implement the "get_siginfo_type" gdbarch method for FreeBSD
>     architectures.
>   Fetch signal information for native FreeBSD processes.
>   Move the thread_section_name class to gdbcore.h.
>   Add a new gdbarch method to fetch signal information from core files.
>   Use the thread_section_name helper class in fbsd_core_thread_name.
>   Recognize the recently-added FreeBSD core dump note for LWP info.
>   Create psuedo sections for FreeBSD NT_PTLWPINFO core notes.
>   Read signal information from FreeBSD core dumps.
> 
>  bfd/ChangeLog        |   4 ++
>  bfd/elf.c            |   4 ++
>  binutils/ChangeLog   |   4 ++
>  binutils/readelf.c   |   2 +
>  gdb/ChangeLog        |  43 +++++++++++
>  gdb/corelow.c        |  82 ++++-----------------
>  gdb/fbsd-nat.c       | 155 ++++++++++++++++++++++++++++++++++++++++
>  gdb/fbsd-tdep.c      | 197 +++++++++++++++++++++++++++++++++++++++++++++++++--
>  gdb/gdbarch.c        |  32 +++++++++
>  gdb/gdbarch.h        |  10 +++
>  gdb/gdbarch.sh       |   5 ++
>  gdb/gdbcore.h        |  45 ++++++++++++
>  gdb/linux-tdep.c     |  21 ++++++
>  include/ChangeLog    |   4 ++
>  include/elf/common.h |   1 +
>  15 files changed, 536 insertions(+), 73 deletions(-)
> 


-- 
John Baldwin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]