mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
perf auxtrace: Add itrace option "I"
Add itrace option "I" to synthesize interrupt or similar (asynchronous) events. This will be used for Intel PT Event Trace events. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Link: https://lore.kernel.org/r/20220124084201.2699795-13-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
1d0dc1ddf0
commit
8ee9a9ab81
3 changed files with 10 additions and 0 deletions
|
@ -7,6 +7,8 @@
|
|||
p synthesize power events (incl. PSB events for Intel PT)
|
||||
o synthesize other events recorded due to the use
|
||||
of aux-output (refer to perf record)
|
||||
I synthesize interrupt or similar (asynchronous) events
|
||||
(e.g. Intel PT Event Trace)
|
||||
e synthesize error events
|
||||
d create a debug log
|
||||
f synthesize first level cache events
|
||||
|
|
|
@ -1333,6 +1333,7 @@ void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts,
|
|||
synth_opts->ptwrites = true;
|
||||
synth_opts->pwr_events = true;
|
||||
synth_opts->other_events = true;
|
||||
synth_opts->intr_events = true;
|
||||
synth_opts->errors = true;
|
||||
synth_opts->flc = true;
|
||||
synth_opts->llc = true;
|
||||
|
@ -1479,6 +1480,9 @@ int itrace_do_parse_synth_opts(struct itrace_synth_opts *synth_opts,
|
|||
case 'o':
|
||||
synth_opts->other_events = true;
|
||||
break;
|
||||
case 'I':
|
||||
synth_opts->intr_events = true;
|
||||
break;
|
||||
case 'e':
|
||||
synth_opts->errors = true;
|
||||
if (get_flags(&p, &synth_opts->error_plus_flags,
|
||||
|
|
|
@ -76,6 +76,7 @@ enum itrace_period_type {
|
|||
* @pwr_events: whether to synthesize power events
|
||||
* @other_events: whether to synthesize other events recorded due to the use of
|
||||
* aux_output
|
||||
* @intr_events: whether to synthesize interrupt events
|
||||
* @errors: whether to synthesize decoder error events
|
||||
* @dont_decode: whether to skip decoding entirely
|
||||
* @log: write a decoding log
|
||||
|
@ -120,6 +121,7 @@ struct itrace_synth_opts {
|
|||
bool ptwrites;
|
||||
bool pwr_events;
|
||||
bool other_events;
|
||||
bool intr_events;
|
||||
bool errors;
|
||||
bool dont_decode;
|
||||
bool log;
|
||||
|
@ -636,6 +638,8 @@ bool auxtrace__evsel_is_auxtrace(struct perf_session *session,
|
|||
" p: synthesize power events\n" \
|
||||
" o: synthesize other events recorded due to the use\n" \
|
||||
" of aux-output (refer to perf record)\n" \
|
||||
" I: synthesize interrupt or similar (asynchronous) events\n" \
|
||||
" (e.g. Intel PT Event Trace)\n" \
|
||||
" e[flags]: synthesize error events\n" \
|
||||
" each flag must be preceded by + or -\n" \
|
||||
" error flags are: o (overflow)\n" \
|
||||
|
|
Loading…
Add table
Reference in a new issue