From: John Baldwin Date: Tue, 22 Mar 2022 19:05:43 +0000 (-0700) Subject: fbsd-nat: Add a low_delete_thread virtual method. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=983b1119bc315c9182e3aba898ca8099e54da49e;p=binutils-gdb.git fbsd-nat: Add a low_delete_thread virtual method. This method can be overridden by architecture-specific targets to perform additional work when a thread is deleted. Note that this method is only invoked on systems supporting LWP events, but the pending use case (aarch64 debug registers) is not supported on older kernels that do not support LWP events. --- diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c index 51234eaa6c9..2bc7937a38b 100644 --- a/gdb/fbsd-nat.c +++ b/gdb/fbsd-nat.c @@ -1293,6 +1293,7 @@ fbsd_nat_target::wait_1 (ptid_t ptid, struct target_waitstatus *ourstatus, if (print_thread_events) printf_unfiltered (_("[%s exited]\n"), target_pid_to_str (wptid).c_str ()); + low_delete_thread (thr); delete_thread (thr); } if (ptrace (PT_CONTINUE, pid, (caddr_t) 1, 0) == -1) diff --git a/gdb/fbsd-nat.h b/gdb/fbsd-nat.h index d7c8eb81e96..6028aebfccc 100644 --- a/gdb/fbsd-nat.h +++ b/gdb/fbsd-nat.h @@ -115,6 +115,10 @@ public: virtual void low_new_fork (ptid_t parent, pid_t child) {} + /* The method to call, if any, when a thread is destroyed. */ + virtual void low_delete_thread (thread_info *) + {} + protected: void post_startup_inferior (ptid_t) override;