From: Alexander Shishkin <alexander.shishkin@linux.intel.com>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>,
Ingo Molnar <mingo@redhat.com>,
linux-kernel@vger.kernel.org, kan.liang@linux.intel.com,
Alexander Shishkin <alexander.shishkin@linux.intel.com>
Subject: [PATCH v5 0/7] perf, intel: Add support for PEBS output to Intel PT
Date: Tue, 6 Aug 2019 10:24:26 +0300 [thread overview]
Message-ID: <20190806072433.26820-1-alexander.shishkin@linux.intel.com> (raw)
Hi Peter,
Sixth attempt at the PEBS-via-PT feature. The previous ones were [1], [2],
[3], [4], [5]. This one addresses the most recent review comments, mainly
renaming the new attribute bit and everything related to 'aux_output'.
Tooling also changed to use /aux-output/ config term.
The PEBS feature: output to Intel PT stream instead of the DS area. It's
theoretically useful in virtualized environments, where DS area can't be
used. It's also good for those who are interested in instruction trace for
context of the PEBS events. As PEBS goes, it can provide LBR context with
all the branch-related information that PT doesn't provide at the moment.
PEBS records are packetized in the PT stream, so instead of extracting
them in the PMI, we leave it to the perf tool, because real time PT
decoding is not practical.
[1] https://marc.info/?l=linux-kernel&m=155679423430002
[2] https://marc.info/?l=linux-kernel&m=156225605132606
[3] https://marc.info/?l=linux-kernel&m=156458152126310
[4] https://marc.info/?l=linux-kernel&m=156458348626999
[5] https://marc.info/?l=linux-kernel&m=156498939722450
Adrian Hunter (5):
perf tools: Add aux_output attribute flag
perf tools: Add itrace option 'o' to synthesize aux-output events
perf intel-pt: Process options for PEBS event synthesis
perf tools: Add aux-output config term
perf intel-pt: Add brief documentation for PEBS via Intel PT
Alexander Shishkin (2):
perf: Allow normal events to output AUX data
perf/x86/intel: Support PEBS output to PT
arch/x86/events/core.c | 34 +++++++++
arch/x86/events/intel/core.c | 18 +++++
arch/x86/events/intel/ds.c | 51 ++++++++++++-
arch/x86/events/intel/pt.c | 5 ++
arch/x86/events/perf_event.h | 17 +++++
arch/x86/include/asm/intel_pt.h | 2 +
arch/x86/include/asm/msr-index.h | 4 +
include/linux/perf_event.h | 14 ++++
include/uapi/linux/perf_event.h | 3 +-
kernel/events/core.c | 93 ++++++++++++++++++++++++
tools/include/uapi/linux/perf_event.h | 3 +-
tools/perf/Documentation/intel-pt.txt | 15 ++++
tools/perf/Documentation/itrace.txt | 2 +
tools/perf/Documentation/perf-record.txt | 2 +
tools/perf/arch/x86/util/intel-pt.c | 23 ++++++
tools/perf/util/auxtrace.c | 4 +
tools/perf/util/auxtrace.h | 3 +
tools/perf/util/evsel.c | 4 +
tools/perf/util/evsel.h | 2 +
tools/perf/util/intel-pt.c | 18 +++++
tools/perf/util/parse-events.c | 8 ++
tools/perf/util/parse-events.h | 1 +
tools/perf/util/parse-events.l | 1 +
23 files changed, 324 insertions(+), 3 deletions(-)
--
2.20.1
next reply other threads:[~2019-08-06 7:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-06 7:24 Alexander Shishkin [this message]
2019-08-06 7:24 ` [PATCH v5 1/7] perf: Allow normal events to output AUX data Alexander Shishkin
2019-08-06 8:37 ` Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 2/7] perf/x86/intel: Support PEBS output to PT Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 3/7] perf tools: Add aux_output attribute flag Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 4/7] perf tools: Add itrace option 'o' to synthesize aux-output events Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 5/7] perf intel-pt: Process options for PEBS event synthesis Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 6/7] perf tools: Add aux-output config term Alexander Shishkin
2019-08-06 7:24 ` [PATCH v5 7/7] perf intel-pt: Add brief documentation for PEBS via Intel PT Alexander Shishkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190806072433.26820-1-alexander.shishkin@linux.intel.com \
--to=alexander.shishkin@linux.intel.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=kan.liang@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).