aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-05-26 22:22:53 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-10-01 09:58:17 -0400
commita925328de88af2f93dbe189fdac436c389d2e5d5 (patch)
tree9549975b446ede27d59397ea5ff3609bda2184b4
parent7f1c6168259f8d75c08f64aae3c8c93b2801eb37 (diff)
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.c9
-rw-r--r--arch/tile/kernel/signal.c12
2 files changed, 2 insertions, 19 deletions
diff --git a/arch/tile/kernel/compat_signal.c b/arch/tile/kernel/compat_signal.c
index 474571b84085..3690f0199f09 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,
411 regs->regs[1] = ptr_to_compat_reg(&frame->info); 411 regs->regs[1] = ptr_to_compat_reg(&frame->info);
412 regs->regs[2] = ptr_to_compat_reg(&frame->uc); 412 regs->regs[2] = ptr_to_compat_reg(&frame->uc);
413 regs->flags |= PT_FLAGS_CALLER_SAVES; 413 regs->flags |= PT_FLAGS_CALLER_SAVES;
414
415 /*
416 * Notify any tracer that was single-stepping it.
417 * The tracer may want to single-step inside the
418 * handler too.
419 */
420 if (test_thread_flag(TIF_SINGLESTEP))
421 ptrace_notify(SIGTRAP);
422
423 return 0; 414 return 0;
424 415
425give_sigsegv: 416give_sigsegv:
diff --git a/arch/tile/kernel/signal.c b/arch/tile/kernel/signal.c
index e29b0553211d..67efb656d104 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,
219 regs->regs[1] = (unsigned long) &frame->info; 219 regs->regs[1] = (unsigned long) &frame->info;
220 regs->regs[2] = (unsigned long) &frame->uc; 220 regs->regs[2] = (unsigned long) &frame->uc;
221 regs->flags |= PT_FLAGS_CALLER_SAVES; 221 regs->flags |= PT_FLAGS_CALLER_SAVES;
222
223 /*
224 * Notify any tracer that was single-stepping it.
225 * The tracer may want to single-step inside the
226 * handler too.
227 */
228 if (test_thread_flag(TIF_SINGLESTEP))
229 ptrace_notify(SIGTRAP);
230
231 return 0; 222 return 0;
232 223
233give_sigsegv: 224give_sigsegv:
@@ -278,7 +269,8 @@ static void handle_signal(unsigned long sig, siginfo_t *info,
278 ret = setup_rt_frame(sig, ka, info, oldset, regs); 269 ret = setup_rt_frame(sig, ka, info, oldset, regs);
279 if (ret) 270 if (ret)
280 return; 271 return;
281 signal_delivered(sig, info, ka, regs, 0); 272 signal_delivered(sig, info, ka, regs,
273 test_thread_flag(TIF_SINGLESTEP));
282} 274}
283 275
284/* 276/*