Re: [question] perf_event, ptrace

From: Peter Zijlstra
Date: Mon Apr 11 2011 - 09:21:40 EST


On Mon, 2011-04-11 at 14:12 +0100, Metzger, Markus T wrote:
> Hi Ingo, Peter,
>
>
>
> When I use perf_event together with ptrace (i.e. when the ptracer is the
> event owner), are there any guarantees whether events have been drained when
> the ptracer is notified?
>
>
>
> When I look at the signal handling code (kernel/signal.c:ptrace_stop(), line
> 1682), it appears as if the ptracee first wakes up the ptracer and then
> calls schedule().
>
>
>
> Thus, if ptracer and ptracee run on different cpus, the ptracer might
> already be looking at the event buffer when the ptracee is scheduled out and
> the last events are drained.
>
>
>
> Am I reading this correctly?
>
>
>
> Is the ptracer expected to check ->data_head to see if there had been any
> updates?

I've got absolutely no clue about ptrace anything. One would expect
ptrace to provide proper notification of when the ptracee is stopped, at
which point staring at ->data_head seems like the right thing to do if
you want to figure out if new events have happened.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/