diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-04-28 08:04:15 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-06-01 18:58:52 +0200 |
commit | efee984c27b67e3ebef40410f35671997441b57c (patch) | |
tree | 53457dba2338f853d34e1754e7f7f960e4a29482 /arch/parisc/kernel | |
parent | powerpc: get rid of restore_sigmask() (diff) | |
download | linux-efee984c27b67e3ebef40410f35671997441b57c.tar.xz linux-efee984c27b67e3ebef40410f35671997441b57c.zip |
new helper: signal_delivered()
Does block_sigmask() + tracehook_signal_handler(); called when
sigframe has been successfully built. All architectures converted
to it; block_sigmask() itself is gone now (merged into this one).
I'm still not too happy with the signature, but that's a separate
story (IMO we need a structure that would contain signal number +
siginfo + k_sigaction, so that get_signal_to_deliver() would fill one,
signal_delivered(), handle_signal() and probably setup...frame() -
take one).
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/parisc/kernel')
-rw-r--r-- | arch/parisc/kernel/signal.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/parisc/kernel/signal.c b/arch/parisc/kernel/signal.c index 25161eaf720d..594459bde14e 100644 --- a/arch/parisc/kernel/signal.c +++ b/arch/parisc/kernel/signal.c @@ -449,9 +449,7 @@ handle_signal(unsigned long sig, siginfo_t *info, struct k_sigaction *ka, if (!setup_rt_frame(sig, ka, info, oldset, regs, in_syscall)) return 0; - block_sigmask(ka, sig); - - tracehook_signal_handler(sig, info, ka, regs, + signal_delivered(sig, info, ka, regs, test_thread_flag(TIF_SINGLESTEP) || test_thread_flag(TIF_BLOCKSTEP)); |