This series finally fixes -icount with iothread and avoids deadlocks due to the vm_clock not making progress when the VM is stopped. The crux of the fix is in patch 1, while patch 2 implements the "clock warping" that fixes deadlocks in v2. Clock warping uses the nanosecond resolution rt_clock timers introduced by my previous series.
With this in place, patch 3 can revert the previous attempt(s). Finally, patch 4 makes the icount code clearer by finishing the bugfix/reorganization of qemu_next_deadline vs. qemu_next_alarm_deadline. v1->v2: reordered patches, renamed qemu_next_deadline v2->v3: introduced warp timer v3->v4: added comments to the code Paolo Bonzini (4): really fix -icount in the iothread case enable vm_clock to "warp" in the iothread+icount case Revert wrong fixes for -icount in the iothread case qemu_next_deadline should not consider host-time timers cpus.c | 13 ++++- qemu-common.h | 1 + qemu-timer.c | 169 ++++++++++++++++++++++++++++++++++++++++++++------------- qemu-timer.h | 3 +- roms/seabios | 2 +- 5 files changed, 146 insertions(+), 42 deletions(-) -- 1.7.4