qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [CFT PATCH 11/12] do not use timedwait on qemu_cpu_cond


From: Paolo Bonzini
Subject: [Qemu-devel] [CFT PATCH 11/12] do not use timedwait on qemu_cpu_cond
Date: Tue, 8 Feb 2011 18:18:28 +0100

Whenever env->created becomes true, qemu_cpu_cond is signaled by
{kvm,tcg}_cpu_thread_fn.

I change qemu_cond_signal to qemu_cond_broadcast because right now
there is only one listened but, if there were more, there would be
no reason to wake up only one.

Signed-off-by: Paolo Bonzini <address@hidden>
---
 cpus.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/cpus.c b/cpus.c
index 97ba166..67fd672 100644
--- a/cpus.c
+++ b/cpus.c
@@ -794,7 +794,7 @@ static void *kvm_cpu_thread_fn(void *arg)
 
     /* signal CPU creation */
     env->created = 1;
-    qemu_cond_signal(&qemu_cpu_cond);
+    qemu_cond_broadcast(&qemu_cpu_cond);
 
     /* and wait for machine initialization */
     while (!qemu_system_ready)
@@ -820,7 +820,7 @@ static void *tcg_cpu_thread_fn(void *arg)
     qemu_mutex_lock(&qemu_global_mutex);
     for (env = first_cpu; env != NULL; env = env->next_cpu)
         env->created = 1;
-    qemu_cond_signal(&qemu_cpu_cond);
+    qemu_cond_broadcast(&qemu_cpu_cond);
 
     /* and wait for machine initialization */
     while (!qemu_system_ready)
@@ -935,7 +935,7 @@ static void tcg_init_vcpu(void *_env)
         qemu_cond_init(env->halt_cond);
         qemu_thread_create(env->thread, tcg_cpu_thread_fn, env);
         while (env->created == 0)
-            qemu_cond_timedwait(&qemu_cpu_cond, &qemu_global_mutex, 100);
+            qemu_cond_wait(&qemu_cpu_cond, &qemu_global_mutex);
         tcg_cpu_thread = env->thread;
         tcg_halt_cond = env->halt_cond;
     } else {
@@ -951,7 +951,7 @@ static void kvm_start_vcpu(CPUState *env)
     qemu_cond_init(env->halt_cond);
     qemu_thread_create(env->thread, kvm_cpu_thread_fn, env);
     while (env->created == 0)
-        qemu_cond_timedwait(&qemu_cpu_cond, &qemu_global_mutex, 100);
+        qemu_cond_wait(&qemu_cpu_cond, &qemu_global_mutex);
 }
 
 void qemu_init_vcpu(void *_env)
-- 
1.7.3.5





reply via email to

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