diff options
author | John Baldwin <jhb@FreeBSD.org> | 2022-03-22 12:05:43 -0700 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2022-03-22 12:05:43 -0700 |
commit | 983b1119bc315c9182e3aba898ca8099e54da49e (patch) | |
tree | e3193e091ee802a5622709841a061b75e5f79c6e | |
parent | 6719bc690e2829c50d3d3bb22ede1324e5baa12a (diff) | |
download | binutils-983b1119bc315c9182e3aba898ca8099e54da49e.zip binutils-983b1119bc315c9182e3aba898ca8099e54da49e.tar.gz binutils-983b1119bc315c9182e3aba898ca8099e54da49e.tar.bz2 |
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.
-rw-r--r-- | gdb/fbsd-nat.c | 1 | ||||
-rw-r--r-- | gdb/fbsd-nat.h | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c index 51234ea..2bc7937 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 d7c8eb8..6028aeb 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; |