Remove usage of find_inferior in unsuspend_all_lwps

Replace with for_each_thread.  I inlined unsuspend_one_lwp in
unsuspend_all_lwps, since it is very simple.

gdb/gdbserver/ChangeLog:

	* linux-low.c (unsuspend_one_lwp): Remove.
	(unsuspend_all_lwps): Use for_each_thread, inline code from
	unsuspend_one_lwp.
This commit is contained in:
Simon Marchi 2017-11-19 22:23:24 -05:00 committed by Simon Marchi
parent 6d1e5673fe
commit 139720c5b3
2 changed files with 13 additions and 16 deletions

View file

@ -1,3 +1,9 @@
2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
* linux-low.c (unsuspend_one_lwp): Remove.
(unsuspend_all_lwps): Use for_each_thread, inline code from
unsuspend_one_lwp.
2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
* gdbthread.h (find_thread): Add overload with ptid_t filter.

View file

@ -2969,28 +2969,19 @@ select_event_lwp (struct lwp_info **orig_lp)
}
}
/* Decrement the suspend count of an LWP. */
static int
unsuspend_one_lwp (thread_info *thread, void *except)
{
struct lwp_info *lwp = get_thread_lwp (thread);
/* Ignore EXCEPT. */
if (lwp == except)
return 0;
lwp_suspended_decr (lwp);
return 0;
}
/* Decrement the suspend count of all LWPs, except EXCEPT, if non
NULL. */
static void
unsuspend_all_lwps (struct lwp_info *except)
{
find_inferior (&all_threads, unsuspend_one_lwp, except);
for_each_thread ([&] (thread_info *thread)
{
lwp_info *lwp = get_thread_lwp (thread);
if (lwp != except)
lwp_suspended_decr (lwp);
});
}
static void move_out_of_jump_pad_callback (thread_info *thread);