signals: sys_ssetmask() uses uninitialized newmask
Commit 77097ae503
("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>
This commit is contained in:
Родитель
5f243b9b46
Коммит
5ba53ff648
|
@ -3286,6 +3286,7 @@ SYSCALL_DEFINE1(ssetmask, int, newmask)
|
||||||
int old = current->blocked.sig[0];
|
int old = current->blocked.sig[0];
|
||||||
sigset_t newset;
|
sigset_t newset;
|
||||||
|
|
||||||
|
siginitset(&newset, newmask);
|
||||||
set_current_blocked(&newset);
|
set_current_blocked(&newset);
|
||||||
|
|
||||||
return old;
|
return old;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче