]> git.baikalelectronics.ru Git - kernel.git/commit
arm/arm64: KVM: Allow a VCPU to fully reset itself
authorMarc Zyngier <marc.zyngier@arm.com>
Thu, 20 Dec 2018 11:36:07 +0000 (11:36 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Thu, 7 Feb 2019 11:44:13 +0000 (11:44 +0000)
commitfcde519638b950d2aff4c2770bc49281e422a2f6
tree7e85610ff66698d60b528d8697e4d221a3ceb851
parent3901b8e75fa9fd95211b50f926715ab639337bf2
arm/arm64: KVM: Allow a VCPU to fully reset itself

The current kvm_psci_vcpu_on implementation will directly try to
manipulate the state of the VCPU to reset it.  However, since this is
not done on the thread that runs the VCPU, we can end up in a strangely
corrupted state when the source and target VCPUs are running at the same
time.

Fix this by factoring out all reset logic from the PSCI implementation
and forwarding the required information along with a request to the
target VCPU.

Reviewed-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@arm.com>
arch/arm/include/asm/kvm_host.h
arch/arm/kvm/reset.c
arch/arm64/include/asm/kvm_host.h
arch/arm64/kvm/reset.c
virt/kvm/arm/arm.c
virt/kvm/arm/psci.c