Messages in this thread Patch in this message | | | Date | Thu, 18 Aug 2011 20:00:19 +0100 | Subject | Subject: [PATCH 08/91] um: switch {rt_,}sigreturn() to set_current_blocked() | From | Al Viro <> |
| |
same story as on x86 native...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> --- arch/um/sys-i386/signal.c | 12 ++---------- arch/um/sys-x86_64/signal.c | 6 +----- 2 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/arch/um/sys-i386/signal.c b/arch/um/sys-i386/signal.c index 89a4662..4403b48 100644 --- a/arch/um/sys-i386/signal.c +++ b/arch/um/sys-i386/signal.c @@ -458,11 +458,7 @@ long sys_sigreturn(struct pt_regs regs) goto segfault; 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 (copy_sc_from_user(¤t->thread.regs, sc)) goto segfault; @@ -489,11 +485,7 @@ long sys_rt_sigreturn(struct pt_regs regs) goto segfault; 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 (copy_sc_from_user(¤t->thread.regs, &uc->uc_mcontext)) goto segfault; diff --git a/arch/um/sys-x86_64/signal.c b/arch/um/sys-x86_64/signal.c index b6b65c7..581b64d 100644 --- a/arch/um/sys-x86_64/signal.c +++ b/arch/um/sys-x86_64/signal.c @@ -270,11 +270,7 @@ long sys_rt_sigreturn(struct pt_regs *regs) goto segfault; 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 (copy_sc_from_user(¤t->thread.regs, &uc->uc_mcontext, &frame->fpstate)) -- 1.7.2.5
| |