OSDN Git Service

KVM: x86/mmu: Invert RET_PF_* check when falling through to emulation
authorSean Christopherson <sean.j.christopherson@intel.com>
Wed, 23 Sep 2020 22:04:23 +0000 (15:04 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 28 Sep 2020 11:57:36 +0000 (07:57 -0400)
Explicitly check for RET_PF_EMULATE instead of implicitly doing the same
by checking for !RET_PF_RETRY (RET_PF_INVALID is handled earlier).  This
will adding new RET_PF_ types in future patches without breaking the
emulation path.

No functional change intended.

Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200923220425.18402-3-sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c

index 68c0a1a..0831e88 100644 (file)
@@ -5466,10 +5466,10 @@ int kvm_mmu_page_fault(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, u64 error_code,
                        return -EIO;
        }
 
-       if (r == RET_PF_RETRY)
-               return 1;
        if (r < 0)
                return r;
+       if (r != RET_PF_EMULATE)
+               return 1;
 
        /*
         * Before emulating the instruction, check if the error code