On Sun, 12 Mar 2023 20:32:34 -0700, Reiji Watanabe wrote:
Presently, when a guest writes 1 to PMCR_EL0.{C,P}, which is WO/RAZ, KVM saves the register value, including these bits. When userspace reads the register using KVM_GET_ONE_REG, KVM returns the saved register value as it is (the saved value might have these bits set). This could result in userspace setting these bits on the destination during migration. Consequently, KVM may end up resetting the vPMU counter registers (PMCCNTR_EL0 and/or PMEVCNTR<n>_EL0) to zero on the first KVM_RUN after migration.
[...]
Applied to kvmarm/fixes, thanks!
[2/2] KVM: arm64: PMU: Don't save PMCR_EL0.{C,P} for the vCPU https://git.kernel.org/kvmarm/kvmarm/c/f6da81f650fa
-- Best, Oliver