提交 415d04d0 编写于 作者: A Al Viro

unicore32: if there's no handler we need to restore sigmask, syscall or no syscall

Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 a53bb24e
...@@ -447,15 +447,12 @@ static void do_signal(struct pt_regs *regs, int syscall) ...@@ -447,15 +447,12 @@ static void do_signal(struct pt_regs *regs, int syscall)
regs->UCreg_00 == -ERESTARTNOINTR) { regs->UCreg_00 == -ERESTARTNOINTR) {
setup_syscall_restart(regs); setup_syscall_restart(regs);
} }
/* If there's no signal to deliver, we just put the saved
* sigmask back.
*/
if (test_thread_flag(TIF_RESTORE_SIGMASK)) {
clear_thread_flag(TIF_RESTORE_SIGMASK);
sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL);
}
} }
/* If there's no signal to deliver, we just put the saved
* sigmask back.
*/
if (test_and_clear_thread_flag(TIF_RESTORE_SIGMASK))
set_current_blocked(&current->saved_sigmask);
} }
asmlinkage void do_notify_resume(struct pt_regs *regs, asmlinkage void do_notify_resume(struct pt_regs *regs,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册