Oleg Nesterov f646e227b8 signal: retarget_shared_pending: consider shared/unblocked signals only
exit_signals() checks signal_pending() before retarget_shared_pending() but
this is suboptimal. We can avoid the while_each_thread() loop in case when
there are no shared signals visible to us.

Add the "shared_pending.signal & ~blocked" check. We don't use tsk->blocked
directly but pass ~blocked as an argument, this is needed for the next patch.

Note: we can optimize this more. while_each_thread(t) can check t->blocked
into account and stop after every pending signal has the new target, see the
next patch.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Matt Fleming <matt.fleming@linux.intel.com>
Acked-by: Tejun Heo <tj@kernel.org>
2011-04-28 13:01:35 +02:00
..
2011-03-14 09:15:23 -04:00
2010-10-30 01:42:19 -04:00
2010-10-30 08:45:43 -04:00
2010-12-16 11:36:43 +01:00
2010-11-18 13:27:46 +01:00
2011-03-15 02:21:44 -04:00
2011-03-23 19:46:51 -07:00