• Oliver Upton's avatar
    Merge branch kvm-arm64/pmu_pmcr_n into kvmarm/next · 123f42f0
    Oliver Upton authored
    * kvm-arm64/pmu_pmcr_n:
      : User-defined PMC limit, courtesy Raghavendra Rao Ananta
      :
      : Certain VMMs may want to reserve some PMCs for host use while running a
      : KVM guest. This was a bit difficult before, as KVM advertised all
      : supported counters to the guest. Userspace can now limit the number of
      : advertised PMCs by writing to PMCR_EL0.N, as KVM's sysreg and PMU
      : emulation enforce the specified limit for handling guest accesses.
      KVM: selftests: aarch64: vPMU test for validating user accesses
      KVM: selftests: aarch64: vPMU register test for unimplemented counters
      KVM: selftests: aarch64: vPMU register test for implemented counters
      KVM: selftests: aarch64: Introduce vpmu_counter_access test
      tools: Import arm_pmuv3.h
      KVM: arm64: PMU: Allow userspace to limit PMCR_EL0.N for the guest
      KVM: arm64: Sanitize PM{C,I}NTEN{SET,CLR}, PMOVS{SET,CLR} before first run
      KVM: arm64: Add {get,set}_user for PM{C,I}NTEN{SET,CLR}, PMOVS{SET,CLR}
      KVM: arm64: PMU: Set PMCR_EL0.N for vCPU based on the associated PMU
      KVM: arm64: PMU: Add a helper to read a vCPU's PMCR_EL0
      KVM: arm64: Select default PMU in KVM_ARM_VCPU_INIT handler
      KVM: arm64: PMU: Introduce helpers to set the guest's PMU
    Signed-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
    123f42f0
kvm_host.h 36.7 KB