microblaze: fix signal masking
authorMatt Fleming <matt.fleming@intel.com>
Fri, 11 May 2012 00:58:04 +0000 (10:58 +1000)
committerAl Viro <viro@zeniv.linux.org.uk>
Tue, 22 May 2012 03:52:34 +0000 (23:52 -0400)
commitbcb8c8d0b7131df1b5aad011db33e17f8def5d0b
treeb1c8b02bb4b6afa271565e530be64358fa13db87
parenta12c3694aeb0321d5e6a50321c63881bd92a1bf2
microblaze: fix signal masking

There are a couple of problems with the current signal code,

1. If we failed to setup the signal stack frame then we should not be
   masking any signals.

2. ka->sa.sa_mask is only added to the current blocked signals list if
   SA_NODEFER is set in ka->sa.sa_flags.  If we successfully setup the
   signal frame and are going to run the handler then we must honour
   sa_mask.

Acked-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/microblaze/kernel/signal.c