x86: signal: handle_signal() should use set_current_blocked()
authorOleg Nesterov <oleg@redhat.com>
Wed, 27 Apr 2011 19:04:28 +0000 (21:04 +0200)
committerOleg Nesterov <oleg@redhat.com>
Thu, 28 Apr 2011 11:01:37 +0000 (13:01 +0200)
commite6a585801b451443480ff66914a522b482457460
treeccca18b6b587244b1400af5c1c6e20fee8483b7a
parente6fa16ab9c1e9b344428e6fea4d29e3cc4b28fb0
x86: signal: handle_signal() should use set_current_blocked()

This is ugly, but if sigprocmask() needs retarget_shared_pending() then
handle signal should follow this logic. In theory it is newer correct to
add the new signals to current->blocked, the signal handler can sleep/etc
so we should notify other threads in case we block the pending signal and
nobody else has TIF_SIGPENDING.

Of course, this change doesn't make signals faster :/

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Matt Fleming <matt.fleming@linux.intel.com>
Acked-by: Tejun Heo <tj@kernel.org>
arch/x86/kernel/signal.c