diff options
| author | Alon Levy <alevy@redhat.com> | 2011-10-23 17:03:52 +0200 |
|---|---|---|
| committer | Gerd Hoffmann <kraxel@redhat.com> | 2011-10-25 14:00:54 +0200 |
| commit | 9f0f352d8546f217780013dd35ab157d667195dd (patch) | |
| tree | 0ce767b2cfa2a61a02a5c4efcac9b55dc09ab4df /hw/qxl.c | |
| parent | 30f6da6656c94964ba8677928588592d9667007e (diff) | |
| download | focaccia-qemu-9f0f352d8546f217780013dd35ab157d667195dd.tar.gz focaccia-qemu-9f0f352d8546f217780013dd35ab157d667195dd.zip | |
qxl: reset update_surface
update init_qxl_ram to reset update_surface to 0. This fixes one case of breakage when installing an old driver in a vm that had a new driver installed. The newer driver would know about surface creation and would change update_surface to !=0, then a reset would happen, all surfaces are destroyed, then the old driver is initialized and issues an UPDATE_AREA, and spice server aborts on invalid surface. RHBZ: 690427 Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/qxl.c')
| -rw-r--r-- | hw/qxl.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/qxl.c b/hw/qxl.c index 3a3b3a44ac..12f71aa56c 100644 --- a/hw/qxl.c +++ b/hw/qxl.c @@ -331,6 +331,7 @@ static void init_qxl_ram(PCIQXLDevice *d) d->ram->magic = cpu_to_le32(QXL_RAM_MAGIC); d->ram->int_pending = cpu_to_le32(0); d->ram->int_mask = cpu_to_le32(0); + d->ram->update_surface = 0; SPICE_RING_INIT(&d->ram->cmd_ring); SPICE_RING_INIT(&d->ram->cursor_ring); SPICE_RING_INIT(&d->ram->release_ring); |