KVM: SVM: Enhance and clean up the vmcb tracking comment in pre_svm_run()
authorSean Christopherson <seanjc@google.com>
Tue, 6 Apr 2021 17:18:11 +0000 (10:18 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 20 Apr 2021 08:18:50 +0000 (04:18 -0400)
Explicitly document why a vmcb must be marked dirty and assigned a new
asid when it will be run on a different cpu.  The "what" is relatively
obvious, whereas the "why" requires reading the APM and/or KVM code.

Opportunistically remove a spurious period and several unnecessary
newlines in the comment.

No functional change intended.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20210406171811.4043363-5-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/svm.c

index 1207526..5f1af41 100644 (file)
@@ -3336,11 +3336,10 @@ static void pre_svm_run(struct kvm_vcpu *vcpu)
        struct vcpu_svm *svm = to_svm(vcpu);
 
        /*
-        * If the previous vmrun of the vmcb occurred on
-        * a different physical cpu then we must mark the vmcb dirty.
-        * and assign a new asid.
-       */
-
+        * If the previous vmrun of the vmcb occurred on a different physical
+        * cpu, then mark the vmcb dirty and assign a new asid.  Hardware's
+        * vmcb clean bits are per logical CPU, as are KVM's asid assignments.
+        */
        if (unlikely(svm->current_vmcb->cpu != vcpu->cpu)) {
                svm->current_vmcb->asid_generation = 0;
                vmcb_mark_all_dirty(svm->vmcb);