summaryrefslogtreecommitdiffstats
path: root/kernel/signal.c
diff options
context:
space:
mode:
authorOleg Nesterov2013-01-05 19:13:13 +0100
committerLinus Torvalds2013-01-06 04:34:54 +0100
commit5ba53ff648e785445a32ba39112ed07e4cf588d0 (patch)
treece8657276d09d639a4c069b9d39f8459542c29f3 /kernel/signal.c
parentMerge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/cmar... (diff)
downloadkernel-qcow2-linux-5ba53ff648e785445a32ba39112ed07e4cf588d0.tar.gz
kernel-qcow2-linux-5ba53ff648e785445a32ba39112ed07e4cf588d0.tar.xz
kernel-qcow2-linux-5ba53ff648e785445a32ba39112ed07e4cf588d0.zip
signals: sys_ssetmask() uses uninitialized newmask
Commit 77097ae503b1 ("most of set_current_blocked() callers want SIGKILL/SIGSTOP removed from set") removed the initialization of newmask by accident, causing ltp to complain like this: ssetmask01 1 TFAIL : sgetmask() failed: TEST_ERRNO=???(0): Success Restore the proper initialization. Reported-and-tested-by: CAI Qian <caiqian@redhat.com> Signed-off-by: Oleg Nesterov <oleg@redhat.com> Cc: stable@kernel.org # v3.5+ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/signal.c')
-rw-r--r--kernel/signal.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/signal.c b/kernel/signal.c
index 7aaa51d8e5b8..9692499c77cf 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -3286,6 +3286,7 @@ SYSCALL_DEFINE1(ssetmask, int, newmask)
int old = current->blocked.sig[0];
sigset_t newset;
+ siginitset(&newset, newmask);
set_current_blocked(&newset);
return old;