diff options
author | Jiri Olsa <jolsa@kernel.org> | 2018-08-30 08:32:51 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2018-08-30 15:52:25 -0300 |
commit | d0192fdba09a8901db133fe5a1fcd22d40fcf545 (patch) | |
tree | 54c88953c437e22cdf67fd3f696ed0878b552b94 | |
parent | 54ac0b1bd25cbdeda226b32a0459e09de46157b3 (diff) | |
download | linux-d0192fdba09a8901db133fe5a1fcd22d40fcf545.tar.gz linux-d0192fdba09a8901db133fe5a1fcd22d40fcf545.tar.bz2 linux-d0192fdba09a8901db133fe5a1fcd22d40fcf545.zip |
perf stat: Move 'metric_events' to 'struct perf_stat_config'
Move the static variable 'metric_events' to 'struct perf_stat_config',
so that it can be passed around and used outside 'perf stat' command.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20180830063252.23729-43-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/builtin-stat.c | 10 | ||||
-rw-r--r-- | tools/perf/util/stat.h | 1 |
2 files changed, 5 insertions, 6 deletions
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 8a4979748cbb..f4ddedc8619b 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -137,8 +137,6 @@ static const char *smi_cost_attrs = { static struct perf_evlist *evsel_list; -static struct rblist metric_events; - static struct target target = { .uid = UINT_MAX, }; @@ -1082,7 +1080,7 @@ static void printout(struct perf_stat_config *config, int id, int nr, perf_stat__print_shadow_stats(config, counter, uval, first_shadow_cpu(config, counter, id), - &out, &metric_events, st); + &out, &config->metric_events, st); if (!config->csv_output && !config->metric_only) { print_noise(config, counter, noise); print_running(config, run, ena); @@ -1533,7 +1531,7 @@ static void print_metric_headers(struct perf_stat_config *config, perf_stat__print_shadow_stats(config, counter, 0, 0, &out, - &metric_events, + &config->metric_events, &rt_stat); } fputc('\n', config->output); @@ -1860,7 +1858,7 @@ static int parse_metric_groups(const struct option *opt, const char *str, int unset __maybe_unused) { - return metricgroup__parse_groups(opt, str, &metric_events); + return metricgroup__parse_groups(opt, str, &stat_config.metric_events); } static const struct option stat_options[] = { @@ -2321,7 +2319,7 @@ static int add_default_attributes(void) struct option opt = { .value = &evsel_list }; return metricgroup__parse_groups(&opt, "transaction", - &metric_events); + &stat_config.metric_events); } if (pmu_have_event("cpu", "cycles-ct") && diff --git a/tools/perf/util/stat.h b/tools/perf/util/stat.h index 5193cbf6e4c6..8d3354e21e19 100644 --- a/tools/perf/util/stat.h +++ b/tools/perf/util/stat.h @@ -125,6 +125,7 @@ struct perf_stat_config { aggr_get_id_t aggr_get_id; struct cpu_map *cpus_aggr_map; u64 *walltime_run; + struct rblist metric_events; }; void update_stats(struct stats *stats, u64 val); |