lkml.org 
[lkml]   [2011]   [Oct]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: Oprofile Regression Caused by commit e5d1367f17ba6a6fed5fd8b74e4d5720923e0c25 on PPC
    From
    On Tue, Oct 11, 2011 at 9:44 AM, Peter Zijlstra <a.p.zijlstra@chello.nl> 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?
    >
    Looking at 3.1-rc9, I doubt it's coming from perf_cgroup_switch(). The function
    is checking for perf context with at least of cgroup event before
    calling perf_pmu_disable().
    If there is no active perf context, there is no cgroup event, thus the
    function is a nop.
    Even if you have a competing perf session, it would have to have at
    least one cgroup
    event for this code to touch HW. The problem must come from somewhere else.

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

    \
     
     \ /
      Last update: 2011-10-11 09:51    [W:0.024 / U:4.412 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site