perf tools: Parse the pmu event prefix and suffix
authorKan Liang <kan.liang@intel.com>
Tue, 7 Oct 2014 15:08:50 +0000 (11:08 -0400)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 15 Oct 2014 19:05:01 +0000 (16:05 -0300)
commitdcb4e1022b40d886027500821a592dd8f8ccde8f
tree45db2ff649f7a4b447e8274e307d001a468c07f0
parent42f60c2d63b0d3f7230d28ac37c1da4885d4ee65
perf tools: Parse the pmu event prefix and suffix

There are two types of event formats for PMU events. E.g. el-abort OR
cpu/el-abort/. However, the lexer mistakenly recognizes the simple style
format as two events.

The parse_events_pmu_check function uses bsearch to search the name in
known pmu event list. It can tell the lexer that the name is a PE_NAME
or a PMU event name prefix or a PMU event name suffix. All these
information will be used for accurately parsing kernel PMU events.

The pmu events list will be read from sysfs at runtime.

Note: Currently, the patch only want to handle the PMU event name as
"a-b" and "a". The only exception, "stalled-cycles-frontend" and
"stalled-cycles-fronted", are already hardcoded in lexer.

Signed-off-by: Kan Liang <kan.liang@intel.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/1412694532-23391-3-git-send-email-kan.liang@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/parse-events.c
tools/perf/util/parse-events.h
tools/perf/util/pmu.c
tools/perf/util/pmu.h