diff options
Diffstat (limited to 'tools/perf/util/counts.c')
| -rw-r--r-- | tools/perf/util/counts.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/tools/perf/util/counts.c b/tools/perf/util/counts.c index 582f3aeaf5e4..2b81707b9dba 100644 --- a/tools/perf/util/counts.c +++ b/tools/perf/util/counts.c @@ -4,6 +4,7 @@  #include <string.h>  #include "evsel.h"  #include "counts.h" +#include <perf/threadmap.h>  #include <linux/zalloc.h>  struct perf_counts *perf_counts__new(int ncpus, int nthreads) @@ -55,9 +56,12 @@ void evsel__reset_counts(struct evsel *evsel)  	perf_counts__reset(evsel->counts);  } -int evsel__alloc_counts(struct evsel *evsel, int ncpus, int nthreads) +int evsel__alloc_counts(struct evsel *evsel)  { -	evsel->counts = perf_counts__new(ncpus, nthreads); +	struct perf_cpu_map *cpus = evsel__cpus(evsel); +	int nthreads = perf_thread_map__nr(evsel->core.threads); + +	evsel->counts = perf_counts__new(cpus ? cpus->nr : 1, nthreads);  	return evsel->counts != NULL ? 0 : -ENOMEM;  }  |