Patchwork [v2,upstream,01/22] unlock iothread during WaitForMultipleObjects

login
register
mail settings
Submitter Paolo Bonzini
Date Feb. 26, 2011, 3:39 p.m.
Message ID <1298734819-1960-2-git-send-email-pbonzini@redhat.com>
Download mbox | patch
Permalink /patch/84646/
State New
Headers show

Comments

Paolo Bonzini - Feb. 26, 2011, 3:39 p.m.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 os-win32.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Patch

diff --git a/os-win32.c b/os-win32.c
index b214e6a..c971d92 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -140,7 +140,9 @@  void os_host_main_loop_wait(int *timeout)
         int err;
         WaitObjects *w = &wait_objects;
 
+        qemu_mutex_unlock_iothread();
         ret = WaitForMultipleObjects(w->num, w->events, FALSE, *timeout);
+        qemu_mutex_lock_iothread();
         if (WAIT_OBJECT_0 + 0 <= ret && ret <= WAIT_OBJECT_0 + w->num - 1) {
             if (w->func[ret - WAIT_OBJECT_0])
                 w->func[ret - WAIT_OBJECT_0](w->opaque[ret - WAIT_OBJECT_0]);