Skip to content

Commit ed09b50

Browse files
sean-jcbonzini
authored andcommitted
KVM: x86: Don't load/put vCPU when unloading its MMU during teardown
Don't load (and then put) a vCPU when unloading its MMU during VM destruction, as nothing in kvm_mmu_unload() accesses vCPU state beyond the root page/address of each MMU, i.e. can't possible need to run with the vCPU loaded. Signed-off-by: Sean Christopherson <seanjc@google.com> Message-ID: <20250224235542.2562848-5-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
1 parent 982caaa commit ed09b50

File tree

1 file changed

+1
-8
lines changed

1 file changed

+1
-8
lines changed

arch/x86/kvm/x86.c

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12754,21 +12754,14 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
1275412754
return ret;
1275512755
}
1275612756

12757-
static void kvm_unload_vcpu_mmu(struct kvm_vcpu *vcpu)
12758-
{
12759-
vcpu_load(vcpu);
12760-
kvm_mmu_unload(vcpu);
12761-
vcpu_put(vcpu);
12762-
}
12763-
1276412757
static void kvm_unload_vcpu_mmus(struct kvm *kvm)
1276512758
{
1276612759
unsigned long i;
1276712760
struct kvm_vcpu *vcpu;
1276812761

1276912762
kvm_for_each_vcpu(i, vcpu, kvm) {
1277012763
kvm_clear_async_pf_completion_queue(vcpu);
12771-
kvm_unload_vcpu_mmu(vcpu);
12764+
kvm_mmu_unload(vcpu);
1277212765
}
1277312766
}
1277412767

0 commit comments

Comments
 (0)