Commit 181ebb5e authored by Adrian Hunter's avatar Adrian Hunter Committed by Arnaldo Carvalho de Melo

perf tools: Add itrace option 'o' to synthesize aux-output events

Add itrace option 'o' to synthesize events recorded in the AUX area due
to the use of perf record's aux-output config term.
Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20190806084606.4021-5-alexander.shishkin@linux.intel.comSigned-off-by: default avatarAlexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 5a4b58e5
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
x synthesize transactions events x synthesize transactions events
w synthesize ptwrite events w synthesize ptwrite events
p synthesize power events p synthesize power events
o synthesize other events recorded due to the use
of aux-output (refer to perf record)
e synthesize error events e synthesize error events
d create a debug log d create a debug log
g synthesize a call chain (use with i or x) g synthesize a call chain (use with i or x)
......
...@@ -974,6 +974,7 @@ void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts, ...@@ -974,6 +974,7 @@ void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts,
synth_opts->transactions = true; synth_opts->transactions = true;
synth_opts->ptwrites = true; synth_opts->ptwrites = true;
synth_opts->pwr_events = true; synth_opts->pwr_events = true;
synth_opts->other_events = true;
synth_opts->errors = true; synth_opts->errors = true;
if (no_sample) { if (no_sample) {
synth_opts->period_type = PERF_ITRACE_PERIOD_INSTRUCTIONS; synth_opts->period_type = PERF_ITRACE_PERIOD_INSTRUCTIONS;
...@@ -1071,6 +1072,9 @@ int itrace_parse_synth_opts(const struct option *opt, const char *str, ...@@ -1071,6 +1072,9 @@ int itrace_parse_synth_opts(const struct option *opt, const char *str,
case 'p': case 'p':
synth_opts->pwr_events = true; synth_opts->pwr_events = true;
break; break;
case 'o':
synth_opts->other_events = true;
break;
case 'e': case 'e':
synth_opts->errors = true; synth_opts->errors = true;
break; break;
......
...@@ -60,6 +60,8 @@ enum itrace_period_type { ...@@ -60,6 +60,8 @@ enum itrace_period_type {
* @transactions: whether to synthesize events for transactions * @transactions: whether to synthesize events for transactions
* @ptwrites: whether to synthesize events for ptwrites * @ptwrites: whether to synthesize events for ptwrites
* @pwr_events: whether to synthesize power events * @pwr_events: whether to synthesize power events
* @other_events: whether to synthesize other events recorded due to the use of
* aux_output
* @errors: whether to synthesize decoder error events * @errors: whether to synthesize decoder error events
* @dont_decode: whether to skip decoding entirely * @dont_decode: whether to skip decoding entirely
* @log: write a decoding log * @log: write a decoding log
...@@ -86,6 +88,7 @@ struct itrace_synth_opts { ...@@ -86,6 +88,7 @@ struct itrace_synth_opts {
bool transactions; bool transactions;
bool ptwrites; bool ptwrites;
bool pwr_events; bool pwr_events;
bool other_events;
bool errors; bool errors;
bool dont_decode; bool dont_decode;
bool log; bool log;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment