hi, adding sysfs attribute to specify the maximum allowed value for perf_event_attr::precise_ip field.
Adding functionality for simple 'p' modifier and 'precise' term to get the maximum allowed value for perf_event_attr::precise_ip field. Following events: -e 'cycles:p' -e 'cpu/cycles,precise/' get maximum allowed value for perf_event_attr::precise_ip field. Following event: -e 'cycles:pp' -e 'cpu/cycles,precise=2/' get perf_event_attr::precise_ip == 2. If precise is disabled completely (sysfs precise == 0), we display warning and continue with standard non-PEBS event. If precise attribute is not supported '1' is used as current default. Adding automated test to test precise event could be properly created (if sysfs precise is supported). And customizing parsing tests with precise modifier. Updating Documentation/ABI with 'precise' attribute and also forgotten 'rdpmc' attribute. thanks, jirka Signed-off-by: Jiri Olsa <jo...@redhat.com> Cc: Corey Ashford <cjash...@linux.vnet.ibm.com> Cc: Frederic Weisbecker <fweis...@gmail.com> Cc: Ingo Molnar <mi...@elte.hu> Cc: Namhyung Kim <namhy...@kernel.org> Cc: Paul Mackerras <pau...@samba.org> Cc: Peter Zijlstra <a.p.zijls...@chello.nl> Cc: Arnaldo Carvalho de Melo <a...@redhat.com> Cc: Andi Kleen <a...@linux.intel.com> Cc: David Ahern <dsah...@gmail.com> Cc: Stephane Eranian <eran...@google.com> --- Andi Kleen (1): perf tools: Add a precise event qualifier Jiri Olsa (8): perf x86: Add precise sysfs cpu pmu attribute perf tools: Add precise object to interface sysfs precise perf tests: Add precise event automated test perf tools: Set maximum precise value for event 'p' modifier perf tools: Set maximum precise value for 'precise' term perf tests: Add automated precise term test perf: Document the ABI for 'precise' sysfs attribute perf: Document the ABI for 'rdpmc' sysfs attribute Documentation/ABI/testing/sysfs-bus-event_source-devices-cpu-precise | 10 ++++ Documentation/ABI/testing/sysfs-bus-event_source-devices-cpu-rdpmc | 8 +++ arch/x86/kernel/cpu/perf_event.c | 34 +++++++++---- tools/perf/Makefile | 2 + tools/perf/tests/builtin-test.c | 4 ++ tools/perf/tests/parse-events.c | 170 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---- tools/perf/tests/precise.c | 49 ++++++++++++++++++ tools/perf/tests/tests.h | 1 + tools/perf/util/parse-events.c | 69 ++++++++++++++++++++++++- tools/perf/util/parse-events.h | 3 ++ tools/perf/util/parse-events.l | 1 + tools/perf/util/parse-events.y | 2 +- tools/perf/util/precise.c | 44 ++++++++++++++++ tools/perf/util/util.h | 3 ++ 14 files changed, 379 insertions(+), 21 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-bus-event_source-devices-cpu-precise create mode 100644 Documentation/ABI/testing/sysfs-bus-event_source-devices-cpu-rdpmc create mode 100644 tools/perf/tests/precise.c create mode 100644 tools/perf/util/precise.c -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/