diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-04-27 13:58:59 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-06-01 12:58:51 -0400 |
commit | 77097ae503b170120ab66dd1d547f8577193f91f (patch) | |
tree | bee5b2e8d91b9ec8ab74c58cbec1796c7bacc2e5 /arch/score | |
parent | edd63a2763bdae0daa4f0a4d4c5d61d1154352a5 (diff) |
most of set_current_blocked() callers want SIGKILL/SIGSTOP removed from set
Only 3 out of 63 do not. Renamed the current variant to __set_current_blocked(),
added set_current_blocked() that will exclude unblockable signals, switched
open-coded instances to it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/score')
-rw-r--r-- | arch/score/kernel/signal.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/score/kernel/signal.c b/arch/score/kernel/signal.c index 13e0eed0e301..f1b3fef0907b 100644 --- a/arch/score/kernel/signal.c +++ b/arch/score/kernel/signal.c | |||
@@ -34,8 +34,6 @@ | |||
34 | #include <asm/syscalls.h> | 34 | #include <asm/syscalls.h> |
35 | #include <asm/ucontext.h> | 35 | #include <asm/ucontext.h> |
36 | 36 | ||
37 | #define _BLOCKABLE (~(sigmask(SIGKILL) | sigmask(SIGSTOP))) | ||
38 | |||
39 | struct rt_sigframe { | 37 | struct rt_sigframe { |
40 | u32 rs_ass[4]; /* argument save space */ | 38 | u32 rs_ass[4]; /* argument save space */ |
41 | u32 rs_code[2]; /* signal trampoline */ | 39 | u32 rs_code[2]; /* signal trampoline */ |
@@ -162,7 +160,6 @@ score_rt_sigreturn(struct pt_regs *regs) | |||
162 | if (__copy_from_user(&set, &frame->rs_uc.uc_sigmask, sizeof(set))) | 160 | if (__copy_from_user(&set, &frame->rs_uc.uc_sigmask, sizeof(set))) |
163 | goto badframe; | 161 | goto badframe; |
164 | 162 | ||
165 | sigdelsetmask(&set, ~_BLOCKABLE); | ||
166 | set_current_blocked(&set); | 163 | set_current_blocked(&set); |
167 | 164 | ||
168 | sig = restore_sigcontext(regs, &frame->rs_uc.uc_mcontext); | 165 | sig = restore_sigcontext(regs, &frame->rs_uc.uc_mcontext); |