I realized now that I responded to this. Sorry about that. On 01/19/2014 03:29 PM, Oleg Nesterov wrote: > On 01/19, Sergio Durigan Junior wrote: >> >> On Friday, January 10 2014, Oleg Nesterov wrote: >> >>> So suppose that gdb does ptrace(PTRACE_SINGLESTEP) and the tracee >>> executes the "syscall" insn. What it should report? >> [...] >>> But what should syscall-exit do? Should it still report SIGSEGV as >>> it currently does, or should it report _SYSCALL_EXIT instead (if >>> PTRACE_O_SYSCALL_EXIT of course), or should it report both? >> >> Both only if _SYSCALL_EXIT is set. Otherwise, stick to the current >> behavior, I guess. > > OK, both. In which order? Probably _EXIT first. But this looks a bit > strange. Suppose that the tracee reports _EXIT, then debugger does > ptrace(PTRACE_CONT), should the tracee report SIGTRAP?
Seems to me that this should be very much the same as fork/vfork/clone event handling. Those are triggered by a syscall anyway. So, say: - ptrace(PTRACE_SINGLESTEP) - the tracee executes the "syscall" insn, and the syscall is "clone". - PTRACE_EVENT_FORK is reported. - The debugger does ptrace(PTRACE_CONT). What should be reported? What is reported now? -- Pedro Alves -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/