From a8e02324dfe6bcafc15d02b790f33321ec4facb0 Mon Sep 17 00:00:00 2001 From: Jiri Olsa Date: Fri, 26 Jun 2015 11:29:10 +0200 Subject: perf stat: Use xyarray for cpu evsel counts Switching single dimensional array of 'struct perf_counts_values' with xyarray object, so we could store thread dimension counts. Signed-off-by: Jiri Olsa Cc: Adrian Hunter Cc: Andi Kleen Cc: David Ahern Cc: Namhyung Kim Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1435310967-14570-6-git-send-email-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/util/stat.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'tools/perf/util/stat.h') diff --git a/tools/perf/util/stat.h b/tools/perf/util/stat.h index 5e43348836a6..6d07612545e0 100644 --- a/tools/perf/util/stat.h +++ b/tools/perf/util/stat.h @@ -3,6 +3,7 @@ #include #include +#include "xyarray.h" struct stats { @@ -45,13 +46,13 @@ struct perf_counts_values { struct perf_counts { s8 scaled; struct perf_counts_values aggr; - struct perf_counts_values cpu[]; + struct xyarray *cpu; }; static inline struct perf_counts_values* perf_counts(struct perf_counts *counts, int cpu) { - return &counts->cpu[cpu]; + return xyarray__entry(counts->cpu, cpu, 0); } void update_stats(struct stats *stats, u64 val); @@ -88,7 +89,7 @@ void perf_stat__print_shadow_stats(FILE *out, struct perf_evsel *evsel, struct perf_counts *perf_counts__new(int ncpus); void perf_counts__delete(struct perf_counts *counts); -void perf_evsel__reset_counts(struct perf_evsel *evsel, int ncpus); +void perf_evsel__reset_counts(struct perf_evsel *evsel); int perf_evsel__alloc_counts(struct perf_evsel *evsel, int ncpus); void perf_evsel__free_counts(struct perf_evsel *evsel); #endif -- cgit