linux/arch/arm64/include/uapi/asm
Marc Zyngier b7628c7973 KVM: arm64: Allow userspace to limit the number of PMU counters for EL2 VMs
As long as we had purely EL1 VMs, we could easily update the number
of guest-visible counters by letting userspace write to PMCR_EL0.N.

With VMs started at EL2, PMCR_EL1.N only reflects MDCR_EL2.HPMN,
and we don't have a good way to limit it.

For this purpose, introduce a new PMUv3 attribute that allows
limiting the maximum number of counters. This requires the explicit
selection of a PMU.

Suggested-by: Oliver Upton <oliver.upton@linux.dev>
Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-04-11 13:08:23 +01:00
..
Kbuild arm64: generate 64-bit syscall.tbl 2024-07-10 14:23:38 +02:00
auxvec.h arm64: signal: Report signal frame size to userspace via auxv 2018-06-01 15:53:10 +01:00
bitsperlong.h asm-generic: partially revert "Unify uapi bitsperlong.h for arm64, riscv and loongarch" 2023-08-17 14:51:20 +02:00
bpf_perf_event.h treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers 2019-07-25 11:05:10 +02:00
byteorder.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
fcntl.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
hwcap.h arm64/hwcap: Describe 2024 dpISA extensions to userspace 2025-01-08 13:41:06 +00:00
kvm.h KVM: arm64: Allow userspace to limit the number of PMU counters for EL2 VMs 2025-04-11 13:08:23 +01:00
mman.h arm64: implement PKEYS support 2024-09-04 12:54:04 +01:00
param.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
perf_regs.h arm64: asm/perf_regs.h: Avoid C++-style comment in UAPI header 2022-09-22 22:15:33 +01:00
posix_types.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
ptrace.h arm64/ptrace: Expose GCS via ptrace and core files 2024-10-04 12:04:41 +01:00
setup.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
sigcontext.h arm64/signal: Expose GCS state in signal frames 2024-10-04 12:04:41 +01:00
signal.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
statfs.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
sve_context.h arm64/sve: Document that __SVE_VQ_MAX is much larger than needed 2024-02-22 19:32:47 +00:00
ucontext.h License cleanup: add SPDX license identifier to uapi header files with a license 2017-11-02 11:20:11 +01:00
unistd.h arm64: generate 64-bit syscall.tbl 2024-07-10 14:23:38 +02:00