Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] powerpc: Fix sigmask handling in sys_sigsuspend.

Better save the sigmask instead of throwing it away so it can be restored.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Heiko Carstens and committed by
Linus Torvalds
4a41cdf9 e6199788

+1 -3
+1 -3
arch/powerpc/kernel/signal_32.c
··· 254 254 */ 255 255 long sys_sigsuspend(old_sigset_t mask) 256 256 { 257 - sigset_t saveset; 258 - 259 257 mask &= _BLOCKABLE; 260 258 spin_lock_irq(&current->sighand->siglock); 261 - saveset = current->blocked; 259 + current->saved_sigmask = current->blocked; 262 260 siginitset(&current->blocked, mask); 263 261 recalc_sigpending(); 264 262 spin_unlock_irq(&current->sighand->siglock);