[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 06/24] Leave inner main_loop faster on pending re
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH v2 06/24] Leave inner main_loop faster on pending requests |
Date: |
Tue, 1 Feb 2011 22:15:46 +0100 |
From: Jan Kiszka <address@hidden>
If there is any pending request that requires us to leave the inner loop
if main_loop, makes sure we do this as soon as possible by enforcing
non-blocking IO processing.
At this change, move variable definitions out of the inner loop to
improve readability.
Signed-off-by: Jan Kiszka <address@hidden>
---
vl.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/vl.c b/vl.c
index 5fad700..2ebc55b 100644
--- a/vl.c
+++ b/vl.c
@@ -1384,18 +1384,21 @@ qemu_irq qemu_system_powerdown;
static void main_loop(void)
{
+ bool nonblocking = false;
+#ifdef CONFIG_PROFILER
+ int64_t ti;
+#endif
int r;
qemu_main_loop_start();
for (;;) {
do {
- bool nonblocking = false;
-#ifdef CONFIG_PROFILER
- int64_t ti;
-#endif
#ifndef CONFIG_IOTHREAD
nonblocking = cpu_exec_all();
+ if (!vm_can_run()) {
+ nonblocking = true;
+ }
#endif
#ifdef CONFIG_PROFILER
ti = profile_getclock();
--
1.7.1
- [Qemu-devel] Re: [PATCH v2 13/24] kvm: Set up signal mask also for !CONFIG_IOTHREAD, (continued)
[Qemu-devel] [PATCH v2 14/24] kvm: Refactor qemu_kvm_eat_signals, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 16/24] Set up signalfd under !CONFIG_IOTHREAD, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 20/24] kvm: Unconditionally reenter kernel after IO exits, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 08/24] kvm: Report proper error on GET_VCPU_MMAP_SIZE failures, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 19/24] Introduce VCPU self-signaling service, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 05/24] Trigger exit from cpu_exec_all on pending IO events, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 02/24] Prevent abortion on multiple VCPU kicks, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 06/24] Leave inner main_loop faster on pending requests,
Jan Kiszka <=
[Qemu-devel] [PATCH v2 10/24] kvm: Handle kvm_init_vcpu errors, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 09/24] kvm: Drop redundant kvm_enabled from kvm_cpu_thread_fn, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 24/24] Fix a few coding style violations in cpus.c, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 15/24] kvm: Call qemu_kvm_eat_signals also under !CONFIG_IOTHREAD, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 03/24] Stop current VCPU on synchronous reset requests, Jan Kiszka, 2011/02/01
[Qemu-devel] [PATCH v2 12/24] Refactor signal setup functions in cpus.c, Jan Kiszka, 2011/02/01
[Qemu-devel] Re: [PATCH v2 00/24] [uq/master] Patch queue, part II, Marcelo Tosatti, 2011/02/04