[PATCH v4 0/6] Make evlist CPUs more accurate

From: Ian Rogers
Date: Sat Apr 30 2022 - 02:23:38 EST


Based on the thread:
https://lore.kernel.org/linux-perf-users/CAP-5=fVMHzTfKdpWMXtbtx7t14u2f4WzNak+F0Q93cQ7CZfhbg@xxxxxxxxxxxxxx/

First patch is a cherry-pick to avoid a conflict of:
https://lore.kernel.org/linux-perf-users/20220414014642.3308206-2-irogers@xxxxxxxxxx/
Second patch makes all_cpus more accurate when there are command line CPUs.
The third patch fixes perf stat metric-only output for uncore metrics.
The fourth patch makes cleans up merging of dummy CPU maps.
The fifth and sixth patch try to make user_requested_cpus and all_cpus
clearer with documentation and by renaming all_cpus.

The code no longer needs to add an intersect function and so the API
is removed and the merged API left unchangaged.

Ian Rogers (6):
perf cpumap: Switch to using perf_cpu_map API
perf evlist: Clear all_cpus before propagating
perf stat: Avoid printing cpus with no counters
perf cpumap: Handle dummy maps as empty in subset
perf evlist: Add to user_requested_cpus documentation
perf evlist: Rename all_cpus

tools/lib/perf/cpumap.c | 4 +--
tools/lib/perf/evlist.c | 14 ++++++----
tools/lib/perf/include/internal/evlist.h | 5 ++--
tools/perf/builtin-record.c | 13 +++++----
tools/perf/tests/cpumap.c | 10 ++++++-
tools/perf/util/bpf_counter_cgroup.c | 35 ++++++++++++------------
tools/perf/util/evlist.c | 6 ++--
tools/perf/util/evlist.h | 4 +--
tools/perf/util/stat-display.c | 7 +++--
9 files changed, 56 insertions(+), 42 deletions(-)

--
2.36.0.464.gb9c8b46e94-goog