Message ID | 1319382232-23392-1-git-send-email-alevy@redhat.com |
---|---|
State | New |
Headers | show |
On 10/23/11 17:03, Alon Levy wrote: > 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. Patch added to spice patch queue. thanks, Gerd
diff --git a/hw/qxl.c b/hw/qxl.c index 03848ed..632658d 100644 --- a/hw/qxl.c +++ b/hw/qxl.c @@ -330,6 +330,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);
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> --- hw/qxl.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)