Revert "Delete delete_thread_silent"

Turns out we'll be gaining a new use of this function very soon, the
incoming AMDGPU port needs it.  Let's add it back, as it isn't really
hurting anything.

This reverts commit 39b8a8090e.
This commit is contained in:
Pedro Alves 2022-06-24 17:20:16 +01:00
parent 10245fe817
commit 86be3050a6
2 changed files with 27 additions and 5 deletions

View File

@ -623,6 +623,10 @@ extern struct thread_info *add_thread_with_info (process_stratum_target *targ,
as exited and do the notification. */
extern void delete_thread (struct thread_info *thread);
/* Like delete_thread, but be quiet about it. Used when the process
this thread belonged to has already exited, for example. */
extern void delete_thread_silent (struct thread_info *thread);
/* Mark the thread exited, but don't delete it or remove it from the
inferior thread list. */
extern void set_thread_exited (thread_info *tp, bool silent);

View File

@ -450,16 +450,20 @@ global_thread_step_over_chain_remove (struct thread_info *tp)
global_thread_step_over_list.erase (it);
}
/* See gdbthread.h. */
/* Delete the thread referenced by THR. If SILENT, don't notify
the observer of this exit.
void
delete_thread (thread_info *thr)
THR must not be NULL or a failed assertion will be raised. */
static void
delete_thread_1 (thread_info *thr, bool silent)
{
gdb_assert (thr != nullptr);
threads_debug_printf ("deleting thread %s", thr->ptid.to_string ().c_str ());
threads_debug_printf ("deleting thread %s, silent = %d",
thr->ptid.to_string ().c_str (), silent);
set_thread_exited (thr, false);
set_thread_exited (thr, silent);
if (!thr->deletable ())
{
@ -473,6 +477,20 @@ delete_thread (thread_info *thr)
delete thr;
}
/* See gdbthread.h. */
void
delete_thread (thread_info *thread)
{
delete_thread_1 (thread, false /* not silent */);
}
void
delete_thread_silent (thread_info *thread)
{
delete_thread_1 (thread, true /* silent */);
}
struct thread_info *
find_thread_global_id (int global_id)
{