KVM: x86: Drop superfluous check on direct MMU vs. WRITE_PF_TO_SP flag
authorSean Christopherson <seanjc@google.com>
Sat, 3 Feb 2024 00:23:42 +0000 (16:23 -0800)
committerSean Christopherson <seanjc@google.com>
Fri, 23 Feb 2024 00:19:06 +0000 (16:19 -0800)
Remove reexecute_instruction()'s final check on the MMU being direct, as
EMULTYPE_WRITE_PF_TO_SP is only ever set if the MMU is indirect, i.e. is a
shadow MMU.  Prior to commit 93c05d3ef252 ("KVM: x86: improve
reexecute_instruction"), the flag simply didn't exist (and KVM actually
returned "true" unconditionally for both types of MMUs).  I.e. the
explicit check for a direct MMU is simply leftover artifact from old code.

Link: https://lore.kernel.org/r/20240203002343.383056-4-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/x86.c

index ac3ea5829df66f37d672547a31f87f568ab470a4..48ec889452e2b7aadb41def283fe87e9b552cbff 100644 (file)
@@ -8806,8 +8806,7 @@ static bool reexecute_instruction(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa,
         * then zap the SPTE to unprotect the gfn, and then do it all over
         * again.  Report the error to userspace.
         */
-       return vcpu->arch.mmu->root_role.direct ||
-              !(emulation_type & EMULTYPE_WRITE_PF_TO_SP);
+       return !(emulation_type & EMULTYPE_WRITE_PF_TO_SP);
 }
 
 static bool retry_instruction(struct x86_emulate_ctxt *ctxt,