Messages in this thread | | | From | Arnaldo Carvalho de Melo <> | Date | Mon, 2 Sep 2019 10:57:21 -0300 | Subject | Re: [PATCH 1/3] libperf: Add perf_cpu_map__max function |
| |
Em Mon, Sep 02, 2019 at 02:12:53PM +0200, Jiri Olsa escreveu: > So it can be used from multiple places.
Applied.
- Arnaldo
> Link: http://lkml.kernel.org/n/tip-yp3h5rl9e8piybufq41zqnla@git.kernel.org > Signed-off-by: Jiri Olsa <jolsa@kernel.org> > --- > tools/perf/builtin-stat.c | 14 +------------- > tools/perf/lib/cpumap.c | 12 ++++++++++++ > tools/perf/lib/include/perf/cpumap.h | 1 + > tools/perf/lib/libperf.map | 1 + > 4 files changed, 15 insertions(+), 13 deletions(-) > > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c > index 7e17bf9f700a..5bc0c570b7b6 100644 > --- a/tools/perf/builtin-stat.c > +++ b/tools/perf/builtin-stat.c > @@ -822,18 +822,6 @@ static int perf_stat__get_core(struct perf_stat_config *config __maybe_unused, > return cpu_map__get_core(map, cpu, NULL); > } > > -static int cpu_map__get_max(struct perf_cpu_map *map) > -{ > - int i, max = -1; > - > - for (i = 0; i < map->nr; i++) { > - if (map->map[i] > max) > - max = map->map[i]; > - } > - > - return max; > -} > - > static int perf_stat__get_aggr(struct perf_stat_config *config, > aggr_get_id_t get_id, struct perf_cpu_map *map, int idx) > { > @@ -928,7 +916,7 @@ static int perf_stat_init_aggr_mode(void) > * taking the highest cpu number to be the size of > * the aggregation translate cpumap. > */ > - nr = cpu_map__get_max(evsel_list->core.cpus); > + nr = perf_cpu_map__max(evsel_list->core.cpus); > stat_config.cpus_aggr_map = perf_cpu_map__empty_new(nr + 1); > return stat_config.cpus_aggr_map ? 0 : -ENOMEM; > } > diff --git a/tools/perf/lib/cpumap.c b/tools/perf/lib/cpumap.c > index 1f0e6f334237..2ca1fafa620d 100644 > --- a/tools/perf/lib/cpumap.c > +++ b/tools/perf/lib/cpumap.c > @@ -260,3 +260,15 @@ int perf_cpu_map__idx(struct perf_cpu_map *cpus, int cpu) > > return -1; > } > + > +int perf_cpu_map__max(struct perf_cpu_map *map) > +{ > + int i, max = -1; > + > + for (i = 0; i < map->nr; i++) { > + if (map->map[i] > max) > + max = map->map[i]; > + } > + > + return max; > +} > diff --git a/tools/perf/lib/include/perf/cpumap.h b/tools/perf/lib/include/perf/cpumap.h > index 8aa995c59498..ac9aa497f84a 100644 > --- a/tools/perf/lib/include/perf/cpumap.h > +++ b/tools/perf/lib/include/perf/cpumap.h > @@ -16,6 +16,7 @@ LIBPERF_API void perf_cpu_map__put(struct perf_cpu_map *map); > LIBPERF_API int perf_cpu_map__cpu(const struct perf_cpu_map *cpus, int idx); > LIBPERF_API int perf_cpu_map__nr(const struct perf_cpu_map *cpus); > LIBPERF_API bool perf_cpu_map__empty(const struct perf_cpu_map *map); > +LIBPERF_API int perf_cpu_map__max(struct perf_cpu_map *map); > > #define perf_cpu_map__for_each_cpu(cpu, idx, cpus) \ > for ((idx) = 0, (cpu) = perf_cpu_map__cpu(cpus, idx); \ > diff --git a/tools/perf/lib/libperf.map b/tools/perf/lib/libperf.map > index dc4d66363bc4..cd0d17b996c8 100644 > --- a/tools/perf/lib/libperf.map > +++ b/tools/perf/lib/libperf.map > @@ -9,6 +9,7 @@ LIBPERF_0.0.1 { > perf_cpu_map__nr; > perf_cpu_map__cpu; > perf_cpu_map__empty; > + perf_cpu_map__max; > perf_thread_map__new_dummy; > perf_thread_map__set_pid; > perf_thread_map__comm; > -- > 2.21.0
--
- Arnaldo
| |