From 38145df24c55bffe8ba63cfa28173c9ddd5a2c2d Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Tue, 1 Feb 2011 22:15:45 +0100 Subject: [PATCH] Trigger exit from cpu_exec_all on pending IO events Except for timer events, we currently do not leave the loop over all VCPUs if an IO event was filed. That may cause unexpected IO latencies under !CONFIG_IOTHREAD in SMP scenarios. Fix it by setting the global exit_request which breaks the loop. Signed-off-by: Jan Kiszka Signed-off-by: Marcelo Tosatti --- cpus.c | 1 + 1 file changed, 1 insertion(+) diff --git a/cpus.c b/cpus.c index f8a88e3bb4..0abc0092dd 100644 --- a/cpus.c +++ b/cpus.c @@ -307,6 +307,7 @@ void qemu_notify_event(void) if (next_cpu && env != next_cpu) { cpu_exit(next_cpu); } + exit_request = 1; } void qemu_mutex_lock_iothread(void) {}