diff options
author | Jiri Olsa <jolsa@kernel.org> | 2019-07-21 13:24:53 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-07-29 18:34:46 -0300 |
commit | 09145d26b608e886415396e9277ae08f0617d21b (patch) | |
tree | 411b86317fb53ac1cce98c33010a7bf52a6920d2 /tools/perf/lib/cpumap.c | |
parent | a00571fda6091b5268d05e87d0797efe2db1920a (diff) | |
download | linux-09145d26b608e886415396e9277ae08f0617d21b.tar.gz linux-09145d26b608e886415396e9277ae08f0617d21b.tar.bz2 linux-09145d26b608e886415396e9277ae08f0617d21b.zip |
libperf: Add perf_cpu_map__for_each_cpu() macro
Add the following macro to libperf:
perf_cpu_map__for_each_cpu()
And its related functions:
perf_cpu_map__cpu()
perf_cpu_map__nr()
That will allow hiding how it is implemented.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20190721112506.12306-67-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/lib/cpumap.c')
-rw-r--r-- | tools/perf/lib/cpumap.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/perf/lib/cpumap.c b/tools/perf/lib/cpumap.c index a5d4f7ff7174..1ddb69e796e5 100644 --- a/tools/perf/lib/cpumap.c +++ b/tools/perf/lib/cpumap.c @@ -224,3 +224,16 @@ invalid: out: return cpus; } + +int perf_cpu_map__cpu(const struct perf_cpu_map *cpus, int idx) +{ + if (idx < cpus->nr) + return cpus->map[idx]; + + return -1; +} + +int perf_cpu_map__nr(const struct perf_cpu_map *cpus) +{ + return cpus ? cpus->nr : 1; +} |