• Jiri Olsa's avatar
    perf/x86: Make hardware event translations available in sysfs · a4747393
    Jiri Olsa authored
    Add support to display hardware events translations available
    through the sysfs. Add 'events' group attribute under the sysfs
    x86 PMU record with attribute/file for each hardware event.
    
    This patch adds only backbone for PMUs to display config under
    'events' directory. The specific PMU support itself will come
    in next patches, however this is how the sysfs group will look
    like:
    
      # ls  /sys/devices/cpu/events/
      branch-instructions
      branch-misses
      bus-cycles
      cache-misses
      cache-references
      cpu-cycles
      instructions
      ref-cycles
      stalled-cycles-backend
      stalled-cycles-frontend
    
    The file - hw event ID mapping is:
    
      file                      hw event ID
      ---------------------------------------------------------------
      cpu-cycles                PERF_COUNT_HW_CPU_CYCLES
      instructions              PERF_COUNT_HW_INSTRUCTIONS
      cache-references          PERF_COUNT_HW_CACHE_REFERENCES
      cache-misses              PERF_COUNT_HW_CACHE_MISSES
      branch-instructions       PERF_COUNT_HW_BRANCH_INSTRUCTIONS
      branch-misses             PERF_COUNT_HW_BRANCH_MISSES
      bus-cycles                PERF_COUNT_HW_BUS_CYCLES
      stalled-cycles-frontend   PERF_COUNT_HW_STALLED_CYCLES_FRONTEND
      stalled-cycles-backend    PERF_COUNT_HW_STALLED_CYCLES_BACKEND
      ref-cycles                PERF_COUNT_HW_REF_CPU_CYCLES
    
    Each file in the 'events' directory contains the term translation
    for the symbolic hw event for the currently running cpu model.
    
      # cat /sys/devices/cpu/events/stalled-cycles-backend
      event=0xb1,umask=0x01,inv,cmask=0x01
    Suggested-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
    Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Stephane Eranian <eranian@google.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/1349873598-12583-2-git-send-email-jolsa@redhat.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    a4747393
perf_event.h 15.7 KB