Message ID | 0d68d0b6f32d1333ed7d1abe831d824da1e8f9d5.1294648329.git.jan.kiszka@web.de |
---|---|
State | New |
Headers | show |
diff --git a/kvm-all.c b/kvm-all.c index a8e9f2c..f3c8375 100644 --- a/kvm-all.c +++ b/kvm-all.c @@ -824,6 +824,12 @@ int kvm_cpu_exec(CPUState *env) DPRINTF("kvm_cpu_exec()\n"); + if (kvm_arch_process_irqchip_events(env)) { + env->exit_request = 0; + env->exception_index = EXCP_HLT; + return 0; + } + do { #ifndef CONFIG_IOTHREAD if (env->exit_request) { @@ -833,11 +839,6 @@ int kvm_cpu_exec(CPUState *env) } #endif - if (kvm_arch_process_irqchip_events(env)) { - ret = 0; - break; - } - if (env->kvm_vcpu_dirty) { kvm_arch_put_registers(env, KVM_PUT_RUNTIME_STATE); env->kvm_vcpu_dirty = 0;