|
@@ -5279,10 +5279,6 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
|
|
kvm_deliver_pmi(vcpu);
|
|
kvm_deliver_pmi(vcpu);
|
|
}
|
|
}
|
|
|
|
|
|
- r = kvm_mmu_reload(vcpu);
|
|
|
|
- if (unlikely(r))
|
|
|
|
- goto out;
|
|
|
|
-
|
|
|
|
if (kvm_check_request(KVM_REQ_EVENT, vcpu) || req_int_win) {
|
|
if (kvm_check_request(KVM_REQ_EVENT, vcpu) || req_int_win) {
|
|
inject_pending_event(vcpu);
|
|
inject_pending_event(vcpu);
|
|
|
|
|
|
@@ -5298,6 +5294,12 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ r = kvm_mmu_reload(vcpu);
|
|
|
|
+ if (unlikely(r)) {
|
|
|
|
+ kvm_x86_ops->cancel_injection(vcpu);
|
|
|
|
+ goto out;
|
|
|
|
+ }
|
|
|
|
+
|
|
preempt_disable();
|
|
preempt_disable();
|
|
|
|
|
|
kvm_x86_ops->prepare_guest_switch(vcpu);
|
|
kvm_x86_ops->prepare_guest_switch(vcpu);
|