diff --git a/include/linux/tracehook.h b/include/linux/tracehook.h index 1eb44a924e5643066677f7d3edef90d6ef9cce0d..10db0102a890b8baa7905cf2b73cded2314f7f30 100644 --- a/include/linux/tracehook.h +++ b/include/linux/tracehook.h @@ -134,6 +134,13 @@ static inline __must_check int tracehook_report_syscall_entry( */ static inline void tracehook_report_syscall_exit(struct pt_regs *regs, int step) { + if (step) { + siginfo_t info; + user_single_step_siginfo(current, regs, &info); + force_sig_info(SIGTRAP, &info, current); + return; + } + ptrace_report_syscall(regs); }