qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] fix halt emulation with icount and CONFIG_IOTHREAD


From: Marcelo Tosatti
Subject: [Qemu-devel] [PATCH] fix halt emulation with icount and CONFIG_IOTHREAD
Date: Tue, 15 Feb 2011 15:54:10 -0200
User-agent: Mutt/1.5.21 (2010-09-15)

Note: to be applied to uq/master.

In icount mode, halt emulation should take into account the nearest event when 
sleeping.

Signed-off-by: Marcelo Tosatti <address@hidden>
Reported-and-tested-by: "Edgar E. Iglesias" <address@hidden>

diff --git a/cpus.c b/cpus.c
index 468544c..21c3eba 100644
--- a/cpus.c
+++ b/cpus.c
@@ -770,7 +770,7 @@ static void qemu_tcg_wait_io_event(void)
     CPUState *env;
 
     while (all_cpu_threads_idle()) {
-        qemu_cond_timedwait(tcg_halt_cond, &qemu_global_mutex, 1000);
+        qemu_cond_timedwait(tcg_halt_cond, &qemu_global_mutex, 
qemu_calculate_timeout());
     }
 
     qemu_mutex_unlock(&qemu_global_mutex);
diff --git a/vl.c b/vl.c
index b436952..8ba7e9d 100644
--- a/vl.c
+++ b/vl.c
@@ -1335,7 +1335,7 @@ void main_loop_wait(int nonblocking)
     if (nonblocking)
         timeout = 0;
     else {
-        timeout = qemu_calculate_timeout();
+        timeout = 1000;
         qemu_bh_update_timeout(&timeout);
     }
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]