• Andi Kleen's avatar
    perf pmu: Expand PMU events by prefix match · 8255718f
    Andi Kleen authored
    When the user specifies a pmu directly, expand it automatically with a
    prefix match for all available PMUs, similar as we do for the normal
    aliases now.
    
    This allows to specify attributes for duplicated boxes quickly.  For
    example uncore_cbox_{0,6}/.../ can be now specified as uncore_cbox/.../
    and it gets automatically expanded for all boxes.
    
    This generally makes it more concise to write uncore specifications, and
    also avoids the need to know the exact topology of the system.
    
    Before:
    
      % perf stat -a -e uncore_cbox_0/event=0x35,umask=0x1,filter_opc=0x19C/,\
      uncore_cbox_1/event=0x35,umask=0x1,filter_opc=0x19C/,\
      uncore_cbox_2/event=0x35,umask=0x1,filter_opc=0x19C/,\
      uncore_cbox_3/event=0x35,umask=0x1,filter_opc=0x19C/,\
      uncore_cbox_4/event=0x35,umask=0x1,filter_opc=0x19C/,\
      uncore_cbox_5/event=0x35,umask=0x1,filter_opc=0x19C/ sleep 1
    
    After:
    
      % perf stat -a -e uncore_cbox/event=0x35,umask=0x1,filter_opc=0x19C/ sleep 1
    
    v2: Handle all bison rules. Move multi add code to separate function.
        Handle uncore_ prefix correctly.
    v3: Move parse_events_multi_pmu_add to separate patch. Move uncore
        prefix check to separate patch.
    Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
    Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
    Link: http://lkml.kernel.org/r/20170320201711.14142-6-andi@firstfloor.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    8255718f
parse-events.c 59.5 KB