From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [PATCH] Fix crash on resolution change -> screen dump -> vga redraw Date: Tue, 07 Apr 2009 15:56:47 -0500 Message-ID: <49DBBE0F.5060904@us.ibm.com> References: <1239096832-25757-1-git-send-email-avi@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org To: Avi Kivity Return-path: Received: from e31.co.us.ibm.com ([32.97.110.149]:45899 "EHLO e31.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757486AbZDGU4y (ORCPT ); Tue, 7 Apr 2009 16:56:54 -0400 Received: from d03relay02.boulder.ibm.com (d03relay02.boulder.ibm.com [9.17.195.227]) by e31.co.us.ibm.com (8.13.1/8.13.1) with ESMTP id n37KrifC018236 for ; Tue, 7 Apr 2009 14:53:44 -0600 Received: from d03av04.boulder.ibm.com (d03av04.boulder.ibm.com [9.17.195.170]) by d03relay02.boulder.ibm.com (8.13.8/8.13.8/NCO v9.2) with ESMTP id n37Kunnm182706 for ; Tue, 7 Apr 2009 14:56:49 -0600 Received: from d03av04.boulder.ibm.com (loopback [127.0.0.1]) by d03av04.boulder.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n37Kunbm009557 for ; Tue, 7 Apr 2009 14:56:49 -0600 In-Reply-To: <1239096832-25757-1-git-send-email-avi@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Avi Kivity wrote: > The vga screen dump function updates last_width and last_height, > but does not change the DisplaySurface that these variables describe. > A consequent vga_draw_graphic() will therefore fail to resize the > surface and crash. > > Fix by invalidating the display state after a screen dump, forcing > vga_draw_graphic() to reallocate the DisplaySurface. > > Signed-off-by: Avi Kivity > Applied. Thanks. Regards, Anthony Liguori > --- > hw/vga.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/hw/vga.c b/hw/vga.c > index b1e4373..4d1049b 100644 > --- a/hw/vga.c > +++ b/hw/vga.c > @@ -2678,4 +2678,5 @@ static void vga_screen_dump(void *opaque, const char *filename) > vga_screen_dump_graphic(s, filename); > else > vga_screen_dump_text(s, filename); > + vga_invalidate_display(s); > } > -- Regards, Anthony Liguori