]> www.infradead.org Git - users/hch/misc.git/commit
KVM: arm64: Restore PMU configuration on first run
authorMarc Zyngier <maz@kernel.org>
Thu, 3 Jun 2021 15:50:02 +0000 (16:50 +0100)
committerMarc Zyngier <maz@kernel.org>
Fri, 18 Jun 2021 13:18:37 +0000 (14:18 +0100)
commitd0c94c49792cf780cbfefe29f81bb8c3b73bc76b
tree632cd74cd7d4cbf7122bf3235de72d974359c9ae
parent2a71fabf6a1bc9162a84e18d6ab991230ca4d588
KVM: arm64: Restore PMU configuration on first run

Restoring a guest with an active virtual PMU results in no perf
counters being instanciated on the host side. Not quite what
you'd expect from a restore.

In order to fix this, force a writeback of PMCR_EL0 on the first
run of a vcpu (using a new request so that it happens once the
vcpu has been loaded). This will in turn create all the host-side
counters that were missing.

Reported-by: Jinank Jain <jinankj@amazon.de>
Tested-by: Jinank Jain <jinankj@amazon.de>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/87wnrbylxv.wl-maz@kernel.org
Link: https://lore.kernel.org/r/b53dfcf9bbc4db7f96154b1cd5188d72b9766358.camel@amazon.de
arch/arm64/include/asm/kvm_host.h
arch/arm64/kvm/arm.c
arch/arm64/kvm/pmu-emul.c