diff options
author | Arnd Bergmann <arnd@arndb.de> | 2012-03-24 20:13:59 +0100 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2012-03-24 20:13:59 +0100 |
commit | 83fe628e16d84efc8df2731bc403eae4e4f53801 (patch) | |
tree | 9a51c292235621d0f4f632c2a55ddb5a6ab582af /arch/tile/kernel/signal.c | |
parent | Merge branch 'samsung/soc' into next/soc2 (diff) | |
parent | Merge branch 'rmobile-fixes-for-linus' of git://github.com/pmundt/linux-sh in... (diff) | |
download | linux-83fe628e16d84efc8df2731bc403eae4e4f53801.tar.xz linux-83fe628e16d84efc8df2731bc403eae4e4f53801.zip |
Merge branch 'renesas/soc' into next/soc2
Diffstat (limited to 'arch/tile/kernel/signal.c')
-rw-r--r-- | arch/tile/kernel/signal.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/arch/tile/kernel/signal.c b/arch/tile/kernel/signal.c index bedaf4e9f3a7..f79d4b88c747 100644 --- a/arch/tile/kernel/signal.c +++ b/arch/tile/kernel/signal.c @@ -97,10 +97,7 @@ SYSCALL_DEFINE1(rt_sigreturn, struct pt_regs *, regs) goto badframe; sigdelsetmask(&set, ~_BLOCKABLE); - spin_lock_irq(¤t->sighand->siglock); - current->blocked = set; - recalc_sigpending(); - spin_unlock_irq(¤t->sighand->siglock); + set_current_blocked(&set); if (restore_sigcontext(regs, &frame->uc.uc_mcontext)) goto badframe; @@ -286,13 +283,7 @@ static int handle_signal(unsigned long sig, siginfo_t *info, * the work_pending path in the return-to-user code, and * either way we can re-enable interrupts unconditionally. */ - spin_lock_irq(¤t->sighand->siglock); - sigorsets(¤t->blocked, - ¤t->blocked, &ka->sa.sa_mask); - if (!(ka->sa.sa_flags & SA_NODEFER)) - sigaddset(¤t->blocked, sig); - recalc_sigpending(); - spin_unlock_irq(¤t->sighand->siglock); + block_sigmask(ka, sig); } return ret; |