From 00b0dc819d1aac88ee45b18fdb05337e01a2df67 Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Mon, 4 Apr 2022 21:12:03 +0100 Subject: all-stop/synchronous RSP support thread-exit events Currently, GDB does not understand the THREAD_EXITED stop reply in remote all-stop mode. There's no good reason for this, it just happened that THREAD_EXITED was only ever reported in non-stop mode so far. This patch teaches GDB to parse that event in all-stop RSP too. There is no need to add a qSupported feature for this, because the server won't send a THREAD_EXITED event unless GDB explicitly asks for it, with QThreadEvents, or with the GDB_THREAD_OPTION_EXIT QThreadOptions option added in the next patch. Change-Id: Ide5d12391adf432779fe4c79526801c4a5630966 --- gdbserver/server.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'gdbserver/server.cc') diff --git a/gdbserver/server.cc b/gdbserver/server.cc index 2a70ca6..4a312da 100644 --- a/gdbserver/server.cc +++ b/gdbserver/server.cc @@ -3045,6 +3045,7 @@ resume (struct thread_resume *actions, size_t num_actions) if (cs.last_status.kind () != TARGET_WAITKIND_EXITED && cs.last_status.kind () != TARGET_WAITKIND_SIGNALLED + && cs.last_status.kind () != TARGET_WAITKIND_THREAD_EXITED && cs.last_status.kind () != TARGET_WAITKIND_NO_RESUMED) current_thread->last_status = cs.last_status; -- cgit v1.1