Re: [PATCH 1/3] perf: add context field to perf_event

Avi Kivity
2011-07-12T09:55:51Z

On 07/12/2011 12:48 PM, Joerg Roedel wrote:
> On Tue, Jul 12, 2011 at 12:44:17PM +0300, Avi Kivity wrote:
> > On 07/12/2011 12:41 PM, Joerg Roedel wrote:
> >> > Using TIF_bits sounds like a much better solution for this, wakeups are
> >> > really rather expensive and its best to avoid extra if at all possible.
> >>
> >> I would rather vote for Avi's solution too. Such a functionality is very
> >> helpful for LWP-perf integration as well (because we need a way to call
> >> do_mmap for a task != current).
> >>
> >
> > It's not needed for that. See use_mm() (caller must be a kernel thread).
>
> But in our case the caller would be the process that wants to count, not
> a kernel thread.
>

Have a helper kernel thread do it for you. Or extend use_mm() to return
the old mm (without dropping its refcount) and add a way to restore it.

Regarding LWP - I thought the intent was self-profiling by the process
for jits and the like? If you also use it for perf, won't it be
unusable for that? Also, can't the process interfere, from userspace,
by executing the unprivileged LWP instructions?

--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.