new helper: sigmask_to_save()
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / xtensa / kernel / signal.c
index 8c4e751e3b832b161ef51bea3debeb3d9f28693f..e4b06e2d4eb988d6c3f80146905587d3d05f640e 100644 (file)
@@ -452,16 +452,10 @@ static void do_signal(struct pt_regs *regs)
        siginfo_t info;
        int signr;
        struct k_sigaction ka;
-       sigset_t oldset;
 
        if (try_to_freeze())
                goto no_signal;
 
-       if (test_thread_flag(TIF_RESTORE_SIGMASK))
-               oldset = &current->saved_sigmask;
-       else
-               oldset = &current->blocked;
-
        task_pt_regs(current)->icountlevel = 0;
 
        signr = get_signal_to_deliver(&info, &ka, regs, NULL);
@@ -501,7 +495,7 @@ static void do_signal(struct pt_regs *regs)
 
                /* Whee!  Actually deliver the signal.  */
                /* Set up the stack frame */
-               ret = setup_frame(signr, &ka, &info, oldset, regs);
+               ret = setup_frame(signr, &ka, &info, sigmask_to_save(), regs);
                if (ret)
                        return;