Re: Oprofile Regression Caused by commite5d1367f17ba6a6fed5fd8b74e4d5720923e0c25 on PPC

From: Eric B Munson
Date: Tue Oct 11 2011 - 09:32:15 EST


On Tue, 11 Oct 2011, Peter Zijlstra wrote:

> On Mon, 2011-10-10 at 19:38 -0400, Eric B Munson wrote:
> > On Fri, 07 Oct 2011, Eric B Munson wrote:
> >
> > > This commit seems to have caused a regression with oprofile. It is fairly easy
> > > to trigger, simply run oprofile monitoring an event that will fire (something
> > > frequent like CPU cycles) causes oprofile to fail saying that the PMU is in use.
> > > If I disable CONFIG_CGROUP_PERF, everything goes back to working. I suspect the
> > > problem is that the PMU is being initialized without being reserved for perf. I
> > > am not yet sure of the right fix yet so if you have any suggestions I would
> > > appreciate them.
> > >
> > > Eric
> >
> > This isn't the best description of the behavior we see, what happens is at some
> > point in the profiling session the MMCR register is clobbered by
> > perf_cgroup_switch() which calls perf_pmu_enable() without reserving the PMC
> > hardware. When this happens oprofile stops counting. It doesn't happen each
> > time so some runs show event counts that are reasonable, but it can also lead to
> > event counts that are smaller than expected, or completely missing.
>
> What kernel are you testing?
>

The tests first showed in Beta testing the new RHEL and SLES kernels, but the
perf cgroup code looks relatively unchanged since. I have asked that the tests
be re-run with Linus' HEAD.

Eric

Attachment: signature.asc
Description: Digital signature