[PATCH 53-55] (Was: Q: what user_enable_single_step() actually means?)

Oleg Nesterov oleg at redhat.com
Wed Sep 23 23:07:48 UTC 2009


On 09/23, Roland McGrath wrote:
>
> > Yes, but this has nothing to do with utrace-ptrace. If we last used
> > PTRACE_CONT, the tracee stops in utrace_resume() path before return to
> > the user-mode, syscall_trace_leave() can't be called.
>
> If I follow what you mean, that is just the x86 bug (now fixed upstream).

Not sure we understand each other, but no. Yes I think the fix is nice,
but afaics it can't help utrace-ptrace.

The tracee stops and reports PTRACE_EVENT_FORK from do_notify_resume(),
after that syscall_trace_leave() can't (and must not) be called.

> > Both tests fail. The 1st one is clear, ptrace_report_clone() is not
> > finished yet. But the 2nd test-case reveals the problem:
> > PTRACE_SINGLESTEP works exactly as I expected, but I didn't know that
> > PTRACE_SINGLESTEP shouldn't bypass the syscall-exit stop!
>
> No, it's weirder than that.

Yes, yes, I see,

> [...snip...]

Thanks! I need to think about this all, will send more fixes tomorrow.

Today I want to do some context->sighand changes.

Oleg.




More information about the utrace-devel mailing list