ports/devel/gdb/files/patch-gdb_fbsd-nat.c
John Baldwin 8113892617 Update port to GDB 8.3.
New features in GDB 8.3 include support for DWARF index caches and
styling (colors) in the CLI and TUI.  Source code styling is also
available via the new SOURCE_HIGHLIGHT option (enabled by default).
GDB 8.3 also adds support for FreeBSD/riscv64.

In addition, kgdb has been updated for changes in 8.3 along with
support for FreeBSD/riscv64 kernels.

The libc++ helpers have been updated to a newer version which adds
support for std::list<> and std::forward_list<>.  The helpers now
also support Python 3.

Finally, a few post-8.3 patches have been backported which add suport
for TLS (Thread Local Storage) variables on FreeBSD amd64, i386,
powerpc, and riscv architectures.  Note that amd64 and i386 do not
support examining TLS variables in core dumps currently.  This support
along with support for additional architectures require kernel changes
and will be added in the future once the kernel has been updated.

Reviewed by:	pizzamig (maintainer)
Differential Revision:	https://reviews.freebsd.org/D20403
2019-06-01 00:44:08 +00:00

17 lines
773 B
C

--- gdb/fbsd-nat.c.orig 2019-05-11 11:19:03.000000000 -0700
+++ gdb/fbsd-nat.c 2019-05-24 16:25:52.961523000 -0700
@@ -1178,6 +1178,14 @@ fbsd_nat_target::resume (ptid_t ptid, int step, enum g
/* If ptid is a specific LWP, suspend all other LWPs in the process. */
inferior *inf = find_inferior_ptid (ptid);
+#ifndef PT_LWP_EVENTS
+ /* When LWP events are not supported, a new thread might already be
+ running that has not yet reported an event when GDB wishes to
+ only run a single thread. Force an update of the thread list
+ to ensure that any such threads are suspended before the process
+ is resumed. */
+ fbsd_add_threads (ptid.pid ());
+#endif
for (thread_info *tp : inf->non_exited_threads ())
{
int request;