lkml.org 
[lkml]   [2015]   [May]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 8/9] x86, perf: Optimize v4 LBR unfreezing
    Date
    From: Andi Kleen <ak@linux.intel.com>

    In Arch perfmon v4 the GLOBAL_STATUS reset automatically unfreezes
    LBRs. So no need to do it manually in the LBR code. Add a check
    to skip it.

    v2: Move test up to beginning of function.
    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    ---
    arch/x86/kernel/cpu/perf_event_intel_lbr.c | 7 +++++++
    1 file changed, 7 insertions(+)

    diff --git a/arch/x86/kernel/cpu/perf_event_intel_lbr.c b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
    index 6c48c97..ae54ea9 100644
    --- a/arch/x86/kernel/cpu/perf_event_intel_lbr.c
    +++ b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
    @@ -139,6 +139,13 @@ static void __intel_pmu_lbr_enable(bool pmi)
    u64 debugctl, lbr_select = 0, orig_debugctl;

    /*
    + * No need to unfreeze manually, as v4 can do that as part
    + * of the GLOBAL_STATUS ack.
    + */
    + if (pmi && x86_pmu.version >= 4)
    + return;
    +
    + /*
    * No need to reprogram LBR_SELECT in a PMI, as it
    * did not change.
    */
    --
    1.9.3


    \
     
     \ /
      Last update: 2015-05-10 22:01    [W:3.327 / U:0.152 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site