Merge branch kvm-arm64/pmevtyper-filter into kvmarm/next
authorOliver Upton <oliver.upton@linux.dev>
Mon, 30 Oct 2023 20:18:23 +0000 (20:18 +0000)
committerOliver Upton <oliver.upton@linux.dev>
Mon, 30 Oct 2023 20:18:23 +0000 (20:18 +0000)
commit7ff7dfe946ab696a3335a98bdc30210f2b567825
treeecfc2f2ea6318c8f51a29f8bc89c1e6ade2f58c8
parentd47dcb67fcf619df971f2c6df6ce1a81426917b6
parentae8d3522e5b7208d238c893a00957864536983dc
Merge branch kvm-arm64/pmevtyper-filter into kvmarm/next

* kvm-arm64/pmevtyper-filter:
  : Fixes to KVM's handling of the PMUv3 exception level filtering bits
  :
  :  - NSH (count at EL2) and M (count at EL3) should be stateful when the
  :    respective EL is advertised in the ID registers but have no effect on
  :    event counting.
  :
  :  - NSU and NSK modify the event filtering of EL0 and EL1, respectively.
  :    Though the kernel may not use these bits, other KVM guests might.
  :    Implement these bits exactly as written in the pseudocode if EL3 is
  :    advertised.
  KVM: arm64: Add PMU event filter bits required if EL3 is implemented
  KVM: arm64: Make PMEVTYPER<n>_EL0.NSH RES0 if EL2 isn't advertised

Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/sys_regs.c
include/kvm/arm_pmu.h