aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorYonit Halperin <yhalperi@redhat.com>2011-07-12 11:51:58 +0300
committerGerd Hoffmann <kraxel@redhat.com>2011-07-20 10:08:53 +0200
commit8927cfbba232e28304734f7afd463c1b84134031 (patch)
treededa2f076811f7376aa2eda1e98e9a7f36c280ff /hw
parentdf9cb669425051f4f4364cffb19c9b8089e04297 (diff)
downloadqemu-8927cfbba232e28304734f7afd463c1b84134031.zip
qemu-8927cfbba232e28304734f7afd463c1b84134031.tar.gz
qemu-8927cfbba232e28304734f7afd463c1b84134031.tar.bz2
qxl: upon reset, if spice worker is stopped, the command rings can be not empty
Spice worker does no longer process commands when it is stopped. Otherwise, it might crash during migration when attempting to process commands while the guest is not completely loaded. Cc: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/qxl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/qxl.c b/hw/qxl.c
index 0b9a4c7..a6fb7f0 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -656,8 +656,8 @@ static void qxl_reset_state(PCIQXLDevice *d)
QXLRam *ram = d->ram;
QXLRom *rom = d->rom;
- assert(SPICE_RING_IS_EMPTY(&ram->cmd_ring));
- assert(SPICE_RING_IS_EMPTY(&ram->cursor_ring));
+ assert(!d->ssd.running || SPICE_RING_IS_EMPTY(&ram->cmd_ring));
+ assert(!d->ssd.running || SPICE_RING_IS_EMPTY(&ram->cursor_ring));
d->shadow_rom.update_id = cpu_to_le32(0);
*rom = d->shadow_rom;
qxl_rom_set_dirty(d);