This patchset removes all uses of unlock/lock in qxl and spice code. It does this by reimplementing the one path that required a lock from the spice-server thread, namely interface_get_command when in vga mode or running without a qxl device.
Incidentaly it fixes the assert(cpu_single_env) that happen in the unrelated qemu-kvm repository, because we never drop the global lock in io vmexits. Tested with winxp 32 bit and linux 64 bit vms, including changes between vga mode and qxl mode using chvt. Alon Levy (3): qxl/spice-display: move pipe to ssd qxl/spice: remove qemu_mutex_{un,}lock_iothread around dispatcher hw/qxl-render: drop cursor locks, add TODO's. Uri Lublin (1): qxl: implement get_command in vga mode without locks hw/qxl-render.c | 13 +++-- hw/qxl.c | 150 ++++++++++++++++++++++++++++++++++++++++------------ hw/qxl.h | 4 -- ui/spice-display.c | 20 ++------ ui/spice-display.h | 16 ++++++ 5 files changed, 144 insertions(+), 59 deletions(-) -- 1.7.4.1