[PATCH v2 0/3] perf: Add PERF_EVENT_IOC_INC_EVENT_LIMIT

From: Charlie Jenkins
Date: Wed Aug 07 2024 - 20:02:52 EST


Introduce a new perf ioctl key PERF_EVENT_IOC_INC_EVENT_LIMIT that
functions the same as PERF_EVENT_IOC_REFRESH, except it does not
immediately enable counters.

Also create a libperf API perf_evsel__refresh() to allow libperf users
access to this ioctl key.

Signed-off-by: Charlie Jenkins <charlie@xxxxxxxxxxxx>
---
Changes in v2:
- Drop discussion about signal race condition
- Add new patch "libperf: Add perf_evsel__refresh() function"
- This newly added patch was pulled from a different series with
modifications to fit the new ioctl key
-
https://lore.kernel.org/lkml/20240726-overflow_check_libperf-v2-0-7d154dcf6bea@xxxxxxxxxxxx/
will be updated
- Link to v1: https://lore.kernel.org/r/20240724-perf_set_event_limit-v1-0-e680c93eca55@xxxxxxxxxxxx

---
Charlie Jenkins (3):
perf: Add PERF_EVENT_IOC_INC_EVENT_LIMIT
perf: Document PERF_EVENT_IOC_INC_EVENT_LIMIT
libperf: Add perf_evsel__refresh() function

include/linux/perf_event.h | 4 +--
include/uapi/linux/perf_event.h | 1 +
kernel/events/core.c | 17 +++++++----
tools/include/uapi/linux/perf_event.h | 1 +
tools/lib/perf/Documentation/libperf.txt | 2 ++
tools/lib/perf/evsel.c | 49 ++++++++++++++++++++++++++------
tools/lib/perf/include/perf/evsel.h | 2 ++
tools/lib/perf/libperf.map | 2 ++
tools/perf/design.txt | 5 ++++
9 files changed, 67 insertions(+), 16 deletions(-)
---
base-commit: 0c3836482481200ead7b416ca80c68a29cfdaabd
change-id: 20240724-perf_set_event_limit-079f1b996376
--
- Charlie