]> git.baikalelectronics.ru Git - kernel.git/commit
perf: Add a counter for number of user access events in context
authorRob Herring <robh@kernel.org>
Wed, 8 Dec 2021 20:11:21 +0000 (14:11 -0600)
committerWill Deacon <will@kernel.org>
Tue, 14 Dec 2021 11:30:54 +0000 (11:30 +0000)
commitf024b45f2711a7a00a1c56ccca7309df8261a1ea
tree6f79c14d0e5c230e03ec3b97481982de4466d974
parent75b4ac14385ef1972ece0ad43a1ed761e6c0010e
perf: Add a counter for number of user access events in context

On arm64, user space counter access will be controlled differently
compared to x86. On x86, access in the strictest mode is enabled for all
tasks in an MM when any event is mmap'ed. For arm64, access is
explicitly requested for an event and only enabled when the event's
context is active. This avoids hooks into the arch context switch code
and gives better control of when access is enabled.

In order to configure user space access when the PMU is enabled, it is
necessary to know if any event (currently active or not) in the current
context has user space accessed enabled. Add a counter similar to other
counters in the context to avoid walking the event list every time.

Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211208201124.310740-3-robh@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
include/linux/perf_event.h
kernel/events/core.c