From: Adrian Hunter <adrian.hun...@intel.com>

Add itrace option 'o' to synthesize events recorded in the AUX area due to
the use of perf record's aux-source config term.

Signed-off-by: Adrian Hunter <adrian.hun...@intel.com>
Signed-off-by: Alexander Shishkin <alexander.shish...@linux.intel.com>
---
 tools/perf/Documentation/itrace.txt | 2 ++
 tools/perf/util/auxtrace.c          | 4 ++++
 tools/perf/util/auxtrace.h          | 3 +++
 3 files changed, 9 insertions(+)

diff --git a/tools/perf/Documentation/itrace.txt 
b/tools/perf/Documentation/itrace.txt
index c2182cbabde3..a9d1ff65e52b 100644
--- a/tools/perf/Documentation/itrace.txt
+++ b/tools/perf/Documentation/itrace.txt
@@ -5,6 +5,8 @@
                x       synthesize transactions events
                w       synthesize ptwrite events
                p       synthesize power events
+               o       synthesize other events recorded due to the use
+                       of aux-source (refer to perf record)
                e       synthesize error events
                d       create a debug log
                g       synthesize a call chain (use with i or x)
diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
index ec0af36697c4..cd763f9e7400 100644
--- a/tools/perf/util/auxtrace.c
+++ b/tools/perf/util/auxtrace.c
@@ -964,6 +964,7 @@ void itrace_synth_opts__set_default(struct 
itrace_synth_opts *synth_opts,
        synth_opts->transactions = true;
        synth_opts->ptwrites = true;
        synth_opts->pwr_events = true;
+       synth_opts->other_events = true;
        synth_opts->errors = true;
        if (no_sample) {
                synth_opts->period_type = PERF_ITRACE_PERIOD_INSTRUCTIONS;
@@ -1061,6 +1062,9 @@ int itrace_parse_synth_opts(const struct option *opt, 
const char *str,
                case 'p':
                        synth_opts->pwr_events = true;
                        break;
+               case 'o':
+                       synth_opts->other_events = true;
+                       break;
                case 'e':
                        synth_opts->errors = true;
                        break;
diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
index e9b4c5edf78b..2690791974b0 100644
--- a/tools/perf/util/auxtrace.h
+++ b/tools/perf/util/auxtrace.h
@@ -60,6 +60,8 @@ enum itrace_period_type {
  * @transactions: whether to synthesize events for transactions
  * @ptwrites: whether to synthesize events for ptwrites
  * @pwr_events: whether to synthesize power events
+ * @other_events: whether to synthesize other events recorded due to the use of
+ *                aux_source
  * @errors: whether to synthesize decoder error events
  * @dont_decode: whether to skip decoding entirely
  * @log: write a decoding log
@@ -86,6 +88,7 @@ struct itrace_synth_opts {
        bool                    transactions;
        bool                    ptwrites;
        bool                    pwr_events;
+       bool                    other_events;
        bool                    errors;
        bool                    dont_decode;
        bool                    log;
-- 
2.20.1

Reply via email to