On 2012-10-22 12:31, Avi Kivity wrote: > On 10/22/2012 11:23 AM, Liu Ping Fan wrote: >> Signed-off-by: Liu Ping Fan <pingf...@linux.vnet.ibm.com> >> --- >> kvm-all.c | 3 +++ >> 1 files changed, 3 insertions(+), 0 deletions(-) >> >> diff --git a/kvm-all.c b/kvm-all.c >> index b3fa597..3d7ae18 100644 >> --- a/kvm-all.c >> +++ b/kvm-all.c >> @@ -1562,12 +1562,15 @@ int kvm_cpu_exec(CPUArchState *env) >> break; >> case KVM_EXIT_MMIO: >> DPRINTF("handle_mmio\n"); >> + qemu_mutex_unlock_iothread(); >> set_context_type(1); >> cpu_physical_memory_rw(run->mmio.phys_addr, >> run->mmio.data, >> run->mmio.len, >> run->mmio.is_write); >> set_context_type(0); >> + qemu_mutex_lock_iothread(); >> + >> ret = 0; >> break; >> case KVM_EXIT_IRQ_WINDOW_OPEN: >> > > This is fine for now, but of course later we'll have to remove the lock > completely and apply it for the other exits (and other processing, when > needed).
I think we can do this already, I posted a patch some time ago. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux