[PATCH v2 0/6] Add support for sysfs event.cpus and cpu event term

From: Ian Rogers
Date: Wed Jul 17 2024 - 20:30:48 EST


The need for a sysfs event.cpus file is discussed here:
https://lore.kernel.org/lkml/CAP-5=fXXuWchzUK0n5KTH8kamr=DQoEni+bUoo8f-4j8Y+eMBg@xxxxxxxxxxxxxx/
following Dhananjay Ugwekar's work on the RAPL /sys/devices/power PMU.
These changes add support for the event.cpus file in sysfs and also a
cpu event term allowing events to have differing CPUs. This was added
in order to test the parsing and map propagation for the sysfs case.

v2: Add support for multiple cpu terms on an event that are
merged. For example, an event of "l1d-misses/cpu=4,cpu=5/" will
now be opened on both CPU 4 and 5 rather than just CPU 4.

Ian Rogers (6):
perf pmu: Merge boolean sysfs event option parsing
perf parse-events: Pass cpu_list as a perf_cpu_map in __add_event
perf pmu: Add support for event.cpus files in sysfs
libperf cpumap: Add ability to create CPU from a single CPU number
perf parse-events: Set is_pmu_core for legacy hardware events
perf parse-events: Add "cpu" term to set the CPU an event is recorded
on

.../sysfs-bus-event_source-devices-events | 14 ++
tools/lib/perf/cpumap.c | 10 ++
tools/lib/perf/include/perf/cpumap.h | 2 +
tools/perf/Documentation/perf-list.txt | 9 +
tools/perf/util/evsel_config.h | 1 +
tools/perf/util/parse-events.c | 162 ++++++++++++------
tools/perf/util/parse-events.h | 3 +-
tools/perf/util/parse-events.l | 1 +
tools/perf/util/pmu.c | 92 +++++++---
tools/perf/util/pmu.h | 1 +
10 files changed, 221 insertions(+), 74 deletions(-)

--
2.45.2.1089.g2a221341d9-goog