[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 13/21] do not use timedwait on qemu_halt_cond
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 13/21] do not use timedwait on qemu_halt_cond |
Date: |
Mon, 21 Feb 2011 09:43:32 +0100 |
The following conditions can cause cpu_has_work(env) to become true:
* env->queued_work_first: run_on_cpu is already kicking the VCPU
* env->stop = 1: pause_all_vcpus is already kicking the VCPU
* env->stopped = 0: resume_all_vcpus is already kicking the VCPU
* vm_running = 1: vm_start is calling resume_all_vcpus
* env->halted = 0: see previous patch
* qemu_cpu_has_work(env): when it becomes true, board code should set
env->halted = 0 too. cpu_interrupt kicks the VCPU, too.
Signed-off-by: Paolo Bonzini <address@hidden>
---
cpus.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/cpus.c b/cpus.c
index 670a42d..868857d 100644
--- a/cpus.c
+++ b/cpus.c
@@ -771,7 +771,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_wait(tcg_halt_cond, &qemu_global_mutex);
}
qemu_mutex_unlock(&qemu_global_mutex);
@@ -794,7 +794,7 @@ static void qemu_tcg_wait_io_event(void)
static void qemu_kvm_wait_io_event(CPUState *env)
{
while (cpu_thread_is_idle(env)) {
- qemu_cond_timedwait(env->halt_cond, &qemu_global_mutex, 1000);
+ qemu_cond_wait(env->halt_cond, &qemu_global_mutex);
}
qemu_kvm_eat_signals(env);
--
1.7.3.5
- [Qemu-devel] [PATCH 03/21] use win32 timer queues, (continued)
[Qemu-devel] [PATCH 08/21] remove CONFIG_THREAD, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 09/21] inline cpu_halted into sole caller, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 11/21] exit round-robin vcpu loop if cpu->stopped is true, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 12/21] always signal pause_cond after stopping a VCPU, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 13/21] do not use timedwait on qemu_halt_cond,
Paolo Bonzini <=
[Qemu-devel] [PATCH 10/21] always qemu_cpu_kick after unhalting a cpu, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 14/21] do not use timedwait on qemu_system_cond, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 15/21] do not use timedwait on qemu_pause_cond, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 17/21] iothread stops the vcpu thread via IPI, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 16/21] do not use timedwait on qemu_cpu_cond, Paolo Bonzini, 2011/02/21
[Qemu-devel] [PATCH 18/21] move blocking of signals to qemu_signalfd_init, Paolo Bonzini, 2011/02/21