perf tools: Add support for skipping itrace instructions
authorAndi Kleen <ak@linux.intel.com>
Mon, 28 Mar 2016 17:45:38 +0000 (10:45 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 30 Mar 2016 14:14:09 +0000 (11:14 -0300)
commitd1706b39f0af6901ab2a5e2ebb210b53c1a5bdc7
tree4bee0f637581706387688651a57fb867c7f6e559
parentf7380c12ec6cfd69f274ba6181cd01c764f877bb
perf tools: Add support for skipping itrace instructions

When using 'perf script' to look at PT traces it is often useful to
ignore the initialization code at the beginning.

On larger traces which may have many millions of instructions in
initialization code doing that in a pipeline can be very slow, with perf
script spending a lot of CPU time calling printf and writing data.

This patch adds an extension to the --itrace argument that skips 'n'
events (instructions, branches or transactions) at the beginning. This
is much more efficient.

v2:
Add support for BTS (Adrian Hunter)
Document in itrace.txt
Fix branch check
Check transactions and instructions too

Committer note:

To test intel_pt one needs to make sure VT-x isn't active, i.e.
stopping KVM guests on the test machine, as described by Andi Kleen
at http://lkml.kernel.org/r/20160301234953.GD23621@tassilo.jf.intel.com

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1459187142-20035-1-git-send-email-andi@firstfloor.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/Documentation/intel-pt.txt
tools/perf/Documentation/itrace.txt
tools/perf/util/auxtrace.c
tools/perf/util/auxtrace.h
tools/perf/util/intel-bts.c
tools/perf/util/intel-pt.c