[PATCH 0/2] KVM: arm64: PMU: Disallow vPMU on non-uniform PMUVer systems

Reiji Watanabe
2023-06-10T06:15:47Z

On systems where the PMUVer is not uniform across all PEs,
KVM currently does not advertise PMUv3 to the guests,
even if userspace successfully runs KVM_ARM_VCPU_INIT with
KVM_ARM_VCPU_PMU_V3.

In such systems, KVM should either disallow userspace from
configuring vPMU, or advertise PMUv3 to the guest.
This series addresses this inconsistent behavior by implementing
the former, as such systems would be extremely uncommon and
unlikely to even use KVM (according to Marc [1]).

The series is based on v6.4-rc5.

[1] https://lore.kernel.org/all/874jnqp73o.wl-maz@kernel.org/

Reiji Watanabe (2):
KVM: arm64: PMU: Introduce pmu_v3_is_supported() helper
KVM: arm64: PMU: Disallow vPMU on non-uniform PMUVer systems

arch/arm64/kvm/arm.c | 1 +
arch/arm64/kvm/pmu-emul.c | 6 +-----
arch/arm64/kvm/sys_regs.c | 2 +-
include/kvm/arm_pmu.h | 18 ++++++++++++++++++
4 files changed, 21 insertions(+), 6 deletions(-)

base-commit: 9561de3a55bed6bdd44a12820ba81ec416e705a7