diff options
author | Jiri Olsa <jolsa@kernel.org> | 2015-06-03 10:25:55 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-06-08 09:30:30 -0400 |
commit | 1eda3b2144391e1ec9e1870bb32d5216ac7b384c (patch) | |
tree | ad323f99acf791a0bc41acda059a67ed6d001ac6 /tools | |
parent | 3e99e2f5e78e601591dbcf777c67a84aa9ea2ae5 (diff) |
perf stat: Introduce reset_shadow_stats function
Move shadow counters reset code into separate function
as preparation for moving it into its own object.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1433341559-31848-6-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/perf/builtin-stat.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index b3e08ce2c564..fc85e6b9bd13 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c | |||
@@ -279,15 +279,8 @@ static int evsel_context(struct perf_evsel *evsel) | |||
279 | return ctx; | 279 | return ctx; |
280 | } | 280 | } |
281 | 281 | ||
282 | static void perf_stat__reset_stats(struct perf_evlist *evlist) | 282 | static void reset_shadow_stats(void) |
283 | { | 283 | { |
284 | struct perf_evsel *evsel; | ||
285 | |||
286 | evlist__for_each(evlist, evsel) { | ||
287 | perf_evsel__reset_stat_priv(evsel); | ||
288 | perf_evsel__reset_counts(evsel, perf_evsel__nr_cpus(evsel)); | ||
289 | } | ||
290 | |||
291 | memset(runtime_nsecs_stats, 0, sizeof(runtime_nsecs_stats)); | 284 | memset(runtime_nsecs_stats, 0, sizeof(runtime_nsecs_stats)); |
292 | memset(runtime_cycles_stats, 0, sizeof(runtime_cycles_stats)); | 285 | memset(runtime_cycles_stats, 0, sizeof(runtime_cycles_stats)); |
293 | memset(runtime_stalled_cycles_front_stats, 0, sizeof(runtime_stalled_cycles_front_stats)); | 286 | memset(runtime_stalled_cycles_front_stats, 0, sizeof(runtime_stalled_cycles_front_stats)); |
@@ -307,6 +300,18 @@ static void perf_stat__reset_stats(struct perf_evlist *evlist) | |||
307 | memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats)); | 300 | memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats)); |
308 | } | 301 | } |
309 | 302 | ||
303 | static void perf_stat__reset_stats(struct perf_evlist *evlist) | ||
304 | { | ||
305 | struct perf_evsel *evsel; | ||
306 | |||
307 | evlist__for_each(evlist, evsel) { | ||
308 | perf_evsel__reset_stat_priv(evsel); | ||
309 | perf_evsel__reset_counts(evsel, perf_evsel__nr_cpus(evsel)); | ||
310 | } | ||
311 | |||
312 | reset_shadow_stats(); | ||
313 | } | ||
314 | |||
310 | static int create_perf_stat_counter(struct perf_evsel *evsel) | 315 | static int create_perf_stat_counter(struct perf_evsel *evsel) |
311 | { | 316 | { |
312 | struct perf_event_attr *attr = &evsel->attr; | 317 | struct perf_event_attr *attr = &evsel->attr; |