Signed-off-by: Liu Ping Fan <[email protected]>
---
kvm-all.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/kvm-all.c b/kvm-all.c
index c2c6909..e92e43c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -1573,10 +1573,14 @@ int kvm_cpu_exec(CPUArchState *env)
break;
case KVM_EXIT_MMIO:
DPRINTF("handle_mmio\n");
+ qemu_mutex_unlock_iothread();
+ qemu_thread_set_dispatch_type(DISPATCH_MMIO);
cpu_physical_memory_rw(run->mmio.phys_addr,
run->mmio.data,
run->mmio.len,
run->mmio.is_write);
+ qemu_thread_reset_dispatch_type();
+ qemu_mutex_lock_iothread();
ret = 0;
break;
case KVM_EXIT_IRQ_WINDOW_OPEN:
--
1.7.4.4