[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200709173628.5613-5-adrian.hunter@intel.com>
Date: Thu, 9 Jul 2020 20:36:21 +0300
From: Adrian Hunter <adrian.hunter@...el.com>
To: Arnaldo Carvalho de Melo <acme@...nel.org>
Cc: Jiri Olsa <jolsa@...hat.com>, Andi Kleen <ak@...ux.intel.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH 04/11] perf auxtrace: Add optional error flags to the itrace 'e' option
Allow the 'e' option to be followed by an architecture-specific number
which flags what kind of errors will or will not be reported.
Signed-off-by: Adrian Hunter <adrian.hunter@...el.com>
---
tools/perf/Documentation/itrace.txt | 3 +++
tools/perf/util/auxtrace.c | 2 ++
tools/perf/util/auxtrace.h | 2 ++
3 files changed, 7 insertions(+)
diff --git a/tools/perf/Documentation/itrace.txt b/tools/perf/Documentation/itrace.txt
index e817179c5027..34864b4047ed 100644
--- a/tools/perf/Documentation/itrace.txt
+++ b/tools/perf/Documentation/itrace.txt
@@ -47,3 +47,6 @@
--itrace=i0nss1000000
skips the first million instructions.
+
+ The 'e' option may be followed by an architecture-specific number which
+ flags what kind of errors will or will not be reported.
diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
index 25c639ac4ad4..5cfc0b12b2b3 100644
--- a/tools/perf/util/auxtrace.c
+++ b/tools/perf/util/auxtrace.c
@@ -1436,6 +1436,8 @@ int itrace_parse_synth_opts(const struct option *opt, const char *str,
break;
case 'e':
synth_opts->errors = true;
+ synth_opts->error_flags = strtoul(p, &endptr, 0);
+ p = endptr;
break;
case 'd':
synth_opts->log = true;
diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
index 142ccf7d34df..a04475f41f28 100644
--- a/tools/perf/util/auxtrace.h
+++ b/tools/perf/util/auxtrace.h
@@ -91,6 +91,7 @@ enum itrace_period_type {
* @cpu_bitmap: CPUs for which to synthesize events, or NULL for all
* @ptime_range: time intervals to trace or NULL
* @range_num: number of time intervals to trace
+ * @error_flags: arch-specific flags to affect what errors are reported
*/
struct itrace_synth_opts {
bool set;
@@ -124,6 +125,7 @@ struct itrace_synth_opts {
unsigned long *cpu_bitmap;
struct perf_time_interval *ptime_range;
int range_num;
+ unsigned int error_flags;
};
/**
--
2.25.1
Powered by blists - more mailing lists