From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:55827) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TUDew-0006SP-RS for qemu-devel@nongnu.org; Fri, 02 Nov 2012 05:35:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TUDet-0002m3-7F for qemu-devel@nongnu.org; Fri, 02 Nov 2012 05:35:26 -0400 Received: from mx1.redhat.com ([209.132.183.28]:23816) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TUDes-0002lT-Uf for qemu-devel@nongnu.org; Fri, 02 Nov 2012 05:35:23 -0400 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id qA29ZLjn030644 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 2 Nov 2012 05:35:21 -0400 From: Gerd Hoffmann Date: Fri, 2 Nov 2012 10:35:16 +0100 Message-Id: <1351848919-10388-5-git-send-email-kraxel@redhat.com> In-Reply-To: <1351848919-10388-1-git-send-email-kraxel@redhat.com> References: <1351848919-10388-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH 4/7] qxl: call dpy_gfx_resize when entering vga mode List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Gerd Hoffmann When entering vga mode the display size likely changes, notify all displaychangelisteners about this. Probably went unnoticed for a while as one if the first things the guest does after leaving qxl native mode and entering qxl vga mode is to set the vga video mode. But there is still a small window where qemu can operate on stale data, leading to crashes now and then. https://bugzilla.redhat.com/show_bug.cgi?id=865767 Signed-off-by: Gerd Hoffmann --- hw/qxl.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hw/qxl.c b/hw/qxl.c index 063970d..e7bf3a1 100644 --- a/hw/qxl.c +++ b/hw/qxl.c @@ -1069,7 +1069,7 @@ static void qxl_enter_vga_mode(PCIQXLDevice *d) trace_qxl_enter_vga_mode(d->id); qemu_spice_create_host_primary(&d->ssd); d->mode = QXL_MODE_VGA; - memset(&d->ssd.dirty, 0, sizeof(d->ssd.dirty)); + dpy_gfx_resize(d->ssd.ds); vga_dirty_log_start(&d->vga); } -- 1.7.1