Re: perf: prctl(PR_TASK_PERF_EVENTS_DISABLE) has no effect

From: Ingo Molnar
Date: Mon Jan 30 2012 - 05:11:37 EST



* Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:

> On Sun, 2012-01-29 at 17:32 +0100, Ingo Molnar wrote:
> > * Andrew Steets <asteets@xxxxxxxxxxxxxxx> wrote:
> >
> > > On 1/28/12 6:01 AM, Ingo Molnar wrote:
> > >
> > > >> prctl(PR_TASK_PERF_EVENTS_DISABLE) doesn't appear to
> > > >> disable perf event counters. Here is a demonstration
> > > >> program:
> > > >
> > > > btw., what's your usecase?
> > >
> > > I'm trying to profile a small section of a long-running
> > > program. I ran into trouble using call-graph recording
> > > and I thought this might be an alternative way of getting
> > > what I was after.
> >
> > That usecase indeed makes sense. Peter, could we allow this
> > for privileged tasks, depending on the perf_paranoia
> > settings or such?
>
> I really dislike it. The sane way around this would be to
> allow easy self-profiling instead of doing things arse about
> face like that.

So, what workflow are you suggesting to Andrew?

I guess we are also hurting from the lack of dwarf stack
backtrace decoding - that would allow the filtering by parent
function without modifying the code. I think Frederic had a
prototype working for 32-bit - any update on that?

Andrew could work that problem around right now by adding:

-fno-omit-frame-pointer

to the build of the utility - that should activate -g and
perf-report's --parent filter should also work fine.

Thanks,

Ingo
--
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/