From 4a41cdf9788f14bb120ad06d9ce17ca05fd72f03 Mon Sep 17 00:00:00 2001 From: Heiko Carstens Date: Wed, 1 Feb 2006 03:05:58 -0800 Subject: [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 Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- arch/powerpc/kernel/signal_32.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'arch') diff --git a/arch/powerpc/kernel/signal_32.c b/arch/powerpc/kernel/signal_32.c index 3747ab0dac3..c6d0595da6b 100644 --- a/arch/powerpc/kernel/signal_32.c +++ b/arch/powerpc/kernel/signal_32.c @@ -254,11 +254,9 @@ int do_signal(sigset_t *oldset, struct pt_regs *regs); */ long sys_sigsuspend(old_sigset_t mask) { - sigset_t saveset; - mask &= _BLOCKABLE; spin_lock_irq(¤t->sighand->siglock); - saveset = current->blocked; + current->saved_sigmask = current->blocked; siginitset(¤t->blocked, mask); recalc_sigpending(); spin_unlock_irq(¤t->sighand->siglock); -- cgit v1.2.3