This series unbreaks -smp >1 and guest debugging in CONFIG_IOTHREAD mode. I still find the SMP scheduling in cpu_exec_all suboptimal, but at least it works now.
Dependencies are: http://thread.gmane.org/gmane.comp.emulators.kvm.devel/52718 (kvm queue) http://thread.gmane.org/gmane.comp.emulators.qemu/75087 The full series can be found at git://git.kiszka.org/qemu.git queues/iothread Jan Kiszka (8): Introduce proper compiler barrier Fix cpu_unlink_tb race Init qemu_system_cond Fix cpu_exit for tcp_cpu_exec Fix qemu_wait_io_event processing in io-thread mode Drop redundant global cur_cpu variable Rename tcg_cpu_exec and tcg_has_work Rework debug exception processing for gdb use cpu-exec.c | 15 +++++++------ cpus.c | 58 +++++++++++++++++++++++++++++++++---------------------- cpus.h | 2 +- kvm-all.c | 2 - qemu-barrier.h | 3 ++ vl.c | 2 +- 6 files changed, 48 insertions(+), 34 deletions(-)