Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: John Baldwin <jhb@FreeBSD.org>
To: gdb-patches@sourceware.org,	binutils@sourceware.org
Subject: [PATCH 0/8] Add support for $_siginfo on FreeBSD
Date: Thu, 29 Jun 2017 23:33:00 -0000	[thread overview]
Message-ID: <20170629233226.20155-1-jhb@FreeBSD.org> (raw)

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).

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(-)

-- 
2.11.0


             reply	other threads:[~2017-06-29 23:33 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-29 23:33 John Baldwin [this message]
2017-06-29 23:33 ` [PATCH 2/8] Fetch signal information for native FreeBSD processes John Baldwin
2017-06-29 23:33 ` [PATCH 8/8] Read signal information from FreeBSD core dumps John Baldwin
2017-06-29 23:33 ` [PATCH 6/8] Recognize the recently-added FreeBSD core dump note for LWP info John Baldwin
2017-06-30  3:19   ` Alan Modra
2017-06-29 23:33 ` [PATCH 7/8] Create psuedo sections for FreeBSD NT_PTLWPINFO core notes John Baldwin
2017-06-30  3:20   ` Alan Modra
2017-06-29 23:33 ` [PATCH 3/8] Move the thread_section_name class to gdbcore.h John Baldwin
2017-06-29 23:33 ` [PATCH 1/8] Implement the "get_siginfo_type" gdbarch method for FreeBSD architectures John Baldwin
2017-06-29 23:41 ` [PATCH 4/8] Add a new gdbarch method to fetch signal information from core files John Baldwin
2017-06-29 23:41 ` [PATCH 5/8] Use the thread_section_name helper class in fbsd_core_thread_name John Baldwin
2017-07-06 11:17 ` [PATCH 0/8] Add support for $_siginfo on FreeBSD John Baldwin
2017-07-06 13:29   ` Pedro Alves

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170629233226.20155-1-jhb@FreeBSD.org \
    --to=jhb@freebsd.org \
    --cc=binutils@sourceware.org \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox