• Kan Liang's avatar
    perf parse-events: Move slots event for the hybrid platform too · e0e14cdf
    Kan Liang authored
    The commit 94dbfd67 ("perf parse-events: Architecture specific
    leader override") introduced a feature to reorder the slots event to
    fulfill the restriction of the perf metrics topdown group. But the
    feature doesn't work on the hybrid machine.
    
      $ perf stat -e "{cpu_core/instructions/,cpu_core/slots/,cpu_core/topdown-retiring/}" -a sleep 1
    
       Performance counter stats for 'system wide':
    
           <not counted>      cpu_core/instructions/
           <not counted>      cpu_core/slots/
         <not supported>      cpu_core/topdown-retiring/
    
             1.002871801 seconds time elapsed
    
    A hybrid platform has a different PMU name for the core PMUs, while
    current perf hard code the PMU name "cpu".
    
    Introduce a new function to check whether the system supports the perf
    metrics feature. The result is cached for the future usage.
    
    For X86, the core PMU name always has "cpu" prefix.
    
    With the patch:
    
      $ perf stat -e "{cpu_core/instructions/,cpu_core/slots/,cpu_core/topdown-retiring/}" -a sleep 1
    
       Performance counter stats for 'system wide':
    
              76,337,010      cpu_core/slots/
              10,416,809      cpu_core/instructions/
              11,692,372      cpu_core/topdown-retiring/
    
             1.002805453 seconds time elapsed
    Reviewed-by: default avatarIan Rogers <irogers@google.com>
    Signed-off-by: default avatarKan Liang <kan.liang@linux.intel.com>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Stephane Eranian <eranian@google.com>
    Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
    Link: https://lore.kernel.org/r/20220518143900.1493980-5-kan.liang@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    e0e14cdf
topdown.h 129 Bytes