aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/signal.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/signal.c')
-rw-r--r--arch/x86/kernel/signal.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
index 25a4a81a51aa..56f3062c5111 100644
--- a/arch/x86/kernel/signal.c
+++ b/arch/x86/kernel/signal.c
@@ -647,12 +647,9 @@ setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
647 struct pt_regs *regs) 647 struct pt_regs *regs)
648{ 648{
649 int usig = signr_convert(sig); 649 int usig = signr_convert(sig);
650 sigset_t *set = &current->blocked; 650 sigset_t *set = sigmask_to_save();
651 int ret; 651 int ret;
652 652
653 if (current_thread_info()->status & TS_RESTORE_SIGMASK)
654 set = &current->saved_sigmask;
655
656 /* Set up the stack frame */ 653 /* Set up the stack frame */
657 if (is_ia32) { 654 if (is_ia32) {
658 if (ka->sa.sa_flags & SA_SIGINFO) 655 if (ka->sa.sa_flags & SA_SIGINFO)