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]

[PATCH v4 0/7] Support kernel-backed user threads on FreeBSD


This set of patches adds support for examining kernel-backed user threads on
FreeBSD.  There is more history in a comment in fbsd-nat.c, but this target
uses ptrace directly (instead of libthread_db) to support the current
threading library (libthr) on FreeBSD which uses a kernel thread for each
user thread.  Support for thread names in both core dumps (via FreeBSD's
OS-specific NT_THRMISC core note) and live is supported as is scheduler
locking.  gcore generates register notes for each thread as well.

The first two patches are to binutils to support FreeBSD-specific core
notes.  The last four are to GDB.

I've dropped binutils@ since the binutils patches have already been
ok'd and they haven't changed.

Relative to the previous version, this adds a new 'core_thread_name'
gdbarch method and moves the logic to fetch thread names for cores out of
fbsd_core_pid_to_str to a new fbsd_core_thread_name function.

John Baldwin (7):
  Add support to readelf for reading FreeBSD ELF core notes.
  Add a psuedosection for the NT_FREEBSD_THRMISC note.
  Add support for extracting thread names from cores.
  Display per-thread information for threads in FreeBSD cores.
  Use LWP IDs with ptrace register requests on FreeBSD.
  Add support for LWP-based threads on FreeBSD.
  Dump register notes for each thread when generating a FreeBSD core.

 bfd/ChangeLog        |   4 +
 bfd/elf.c            |   7 +
 binutils/ChangeLog   |   5 +
 binutils/readelf.c   |  35 +++++
 gdb/ChangeLog        |  82 ++++++++++
 gdb/NEWS             |   6 +
 gdb/amd64bsd-nat.c   |  24 +--
 gdb/config.in        |   3 +
 gdb/configure        |  16 ++
 gdb/configure.ac     |   7 +
 gdb/corelow.c        |  10 ++
 gdb/doc/ChangeLog    |   4 +
 gdb/doc/gdb.texinfo  |   5 +
 gdb/fbsd-nat.c       | 423 +++++++++++++++++++++++++++++++++++++++++++++++----
 gdb/fbsd-tdep.c      | 210 +++++++++++++++++++++----
 gdb/gdbarch.c        |  32 ++++
 gdb/gdbarch.h        |   9 ++
 gdb/gdbarch.sh       |   4 +
 gdb/i386bsd-nat.c    |  30 ++--
 gdb/inf-ptrace.c     |   2 +-
 gdb/inf-ptrace.h     |   5 +
 gdb/ppcfbsd-nat.c    |  12 +-
 include/ChangeLog    |  13 ++
 include/elf/common.h |  14 ++
 24 files changed, 870 insertions(+), 92 deletions(-)

-- 
2.7.0


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