diff options
Diffstat (limited to 'main-loop.c')
-rw-r--r-- | main-loop.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/main-loop.c b/main-loop.c index db600a37f1..5877615387 100644 --- a/main-loop.c +++ b/main-loop.c @@ -230,7 +230,7 @@ static int os_host_main_loop_wait(int64_t timeout) if (!timeout && (spin_counter > MAX_MAIN_LOOP_SPIN)) { static bool notified; - if (!notified && !qtest_enabled()) { + if (!notified && !qtest_driver()) { fprintf(stderr, "main-loop: WARNING: I/O thread spun for %d iterations\n", MAX_MAIN_LOOP_SPIN); @@ -506,6 +506,9 @@ int main_loop_wait(int nonblocking) slirp_pollfds_poll(gpollfds, (ret < 0)); #endif + /* CPU thread can infinitely wait for event after + missing the warp */ + qemu_clock_warp(QEMU_CLOCK_VIRTUAL); qemu_clock_run_all_timers(); return ret; |