Эх сурвалжийг харах

KVM: VMX: Fix locking imbalance on emulation failure

We have to disable preemption and IRQs on every exit from
handle_invalid_guest_state, otherwise we generate at least a
preempt_disable imbalance.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Jan Kiszka 16 жил өмнө
parent
commit
263799a361
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      arch/x86/kvm/vmx.c

+ 1 - 1
arch/x86/kvm/vmx.c

@@ -3168,7 +3168,7 @@ static void handle_invalid_guest_state(struct kvm_vcpu *vcpu,
 
 		if (err != EMULATE_DONE) {
 			kvm_report_emulation_failure(vcpu, "emulation failure");
-			return;
+			break;
 		}
 
 		if (signal_pending(current))