Remove usage of find_inferior in linux_mourn

Replace with for_each_thread with pid filtering.  The callback becomes
trivial enough that it's better to inline it.

gdb/gdbserver/ChangeLog:

	* linux-low.c (delete_lwp_callback): Remove.
	(linux_mourn): Use for_each_thread.
This commit is contained in:
Simon Marchi 2017-12-02 20:36:37 -05:00
parent 798a38e8de
commit 6b2a85daf5
2 changed files with 9 additions and 13 deletions

View File

@ -1,3 +1,8 @@
2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
* linux-low.c (delete_lwp_callback): Remove.
(linux_mourn): Use for_each_thread.
2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
* linux-low.c (linux_detach_lwp_callback): Return void, remove

View File

@ -1643,18 +1643,6 @@ linux_detach (int pid)
/* Remove all LWPs that belong to process PROC from the lwp list. */
static int
delete_lwp_callback (thread_info *thread, void *proc)
{
struct lwp_info *lwp = get_thread_lwp (thread);
struct process_info *process = (struct process_info *) proc;
if (pid_of (thread) == pid_of (process))
delete_lwp (lwp);
return 0;
}
static void
linux_mourn (struct process_info *process)
{
@ -1664,7 +1652,10 @@ linux_mourn (struct process_info *process)
thread_db_mourn (process);
#endif
find_inferior (&all_threads, delete_lwp_callback, process);
for_each_thread (process->pid, [] (thread_info *thread)
{
delete_lwp (get_thread_lwp (thread));
});
/* Freeing all private data. */
priv = process->priv;