Messages in this thread Patch in this message | | | Date | Tue, 24 Nov 2009 21:01:38 +0100 | From | Oleg Nesterov <> | Subject | [RFC,PATCH 03/14] ptrace: introduce user_single_step_siginfo() helper |
| |
(already in mm: ptrace-introduce-user_single_step_siginfo-helper.patch)
Suggested by Roland.
Currently there is no way to synthesize a single-stepping trap in the arch-independent manner. This patch adds the default helper which fills siginfo_t, arch/ can can override it.
Architetures which implement user_enable_single_step() should add user_single_step_siginfo() also.
Signed-off-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Roland McGrath <roland@redhat.com> ---
include/linux/ptrace.h | 12 ++++++++++++ 1 file changed, 12 insertions(+)
--- V1/include/linux/ptrace.h~3_DEFAULT_HELPER 2009-11-24 19:50:39.000000000 +0100 +++ V1/include/linux/ptrace.h 2009-11-24 19:51:28.000000000 +0100 @@ -273,6 +273,18 @@ static inline void user_enable_block_ste } #endif /* arch_has_block_step */ +#ifdef ARCH_HAS_USER_SINGLE_STEP_INFO +extern void user_single_step_siginfo(struct task_struct *tsk, + struct pt_regs *regs, siginfo_t *info); +#else +static inline void user_single_step_siginfo(struct task_struct *tsk, + struct pt_regs *regs, siginfo_t *info) +{ + memset(info, 0, sizeof(*info)); + info->si_signo = SIGTRAP; +} +#endif + #ifndef arch_ptrace_stop_needed /** * arch_ptrace_stop_needed - Decide whether arch_ptrace_stop() should be called
| |