diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-05-26 22:22:53 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-10-01 09:58:17 -0400 |
commit | a925328de88af2f93dbe189fdac436c389d2e5d5 (patch) | |
tree | 9549975b446ede27d59397ea5ff3609bda2184b4 | |
parent | 7f1c6168259f8d75c08f64aae3c8c93b2801eb37 (diff) | |
download | op-kernel-dev-a925328de88af2f93dbe189fdac436c389d2e5d5.zip op-kernel-dev-a925328de88af2f93dbe189fdac436c389d2e5d5.tar.gz |
tile: don't bother with SIGTRAP in setup_frame
Tell signal_delivered() to do it instead.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | arch/tile/kernel/compat_signal.c | 9 | ||||
-rw-r--r-- | arch/tile/kernel/signal.c | 12 |
2 files changed, 2 insertions, 19 deletions
diff --git a/arch/tile/kernel/compat_signal.c b/arch/tile/kernel/compat_signal.c index 474571b..3690f01 100644 --- a/arch/tile/kernel/compat_signal.c +++ b/arch/tile/kernel/compat_signal.c @@ -411,15 +411,6 @@ int compat_setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info, regs->regs[1] = ptr_to_compat_reg(&frame->info); regs->regs[2] = ptr_to_compat_reg(&frame->uc); regs->flags |= PT_FLAGS_CALLER_SAVES; - - /* - * Notify any tracer that was single-stepping it. - * The tracer may want to single-step inside the - * handler too. - */ - if (test_thread_flag(TIF_SINGLESTEP)) - ptrace_notify(SIGTRAP); - return 0; give_sigsegv: diff --git a/arch/tile/kernel/signal.c b/arch/tile/kernel/signal.c index e29b055..67efb65 100644 --- a/arch/tile/kernel/signal.c +++ b/arch/tile/kernel/signal.c @@ -219,15 +219,6 @@ static int setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info, regs->regs[1] = (unsigned long) &frame->info; regs->regs[2] = (unsigned long) &frame->uc; regs->flags |= PT_FLAGS_CALLER_SAVES; - - /* - * Notify any tracer that was single-stepping it. - * The tracer may want to single-step inside the - * handler too. - */ - if (test_thread_flag(TIF_SINGLESTEP)) - ptrace_notify(SIGTRAP); - return 0; give_sigsegv: @@ -278,7 +269,8 @@ static void handle_signal(unsigned long sig, siginfo_t *info, ret = setup_rt_frame(sig, ka, info, oldset, regs); if (ret) return; - signal_delivered(sig, info, ka, regs, 0); + signal_delivered(sig, info, ka, regs, + test_thread_flag(TIF_SINGLESTEP)); } /* |