From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tokarev Subject: Re: [Qemu-devel] Re: Another SIGFPE in display code, now in cirrus Date: Wed, 12 May 2010 23:12:54 +0400 Message-ID: <4BEAFDB6.6030001@msgid.tls.msk.ru> References: <4BE32178.2090103@msgid.tls.msk.ru> <4BE7B8C1.9060807@redhat.com> <4BE7C0A5.3090909@redhat.com> <4BEAA0CC.4090906@redhat.com> <4BEABABC.6080305@redhat.com> <4BEAD232.2040700@redhat.com> <20100512170702.GE19314@shareable.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Jamie Lokier , Avi Kivity , Brian Kress , qemu-devel , KVM list To: Stefano Stabellini Return-path: Received: from isrv.corpit.ru ([81.13.33.159]:55740 "EHLO isrv.corpit.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755892Ab0ELTM4 (ORCPT ); Wed, 12 May 2010 15:12:56 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: 12.05.2010 22:11, Stefano Stabellini wrote: > On Wed, 12 May 2010, Jamie Lokier wrote: >> Stefano Stabellini wrote: >>> On Wed, 12 May 2010, Avi Kivity wrote: >>>> It's useful if you have a one-line horizontal pattern you want to >>>> propagate all over. >>> >>> It might be useful all right, but it is not entirely clear what the >>> hardware should do in this situation from the documentation we have, and >>> certainly the current state of the cirrus emulation code doesn't help. >> >> It's quite a reasonable thing for hardware to do, even if not documented. >> It would be surprising if the hardware didn't copy the one-line pattern. > > All right then, you convinced me :) > > This is my proposed solution, however it is untested with Windows NT. Well. At least it does not crash anymore. With this patch applied, when hitting "Test" (of a new video mode) button on WindowsNT, the guest window gets resized to correct size, but is painted with yellow and nothing happens. The CPU enters 100%, and on the kvm console the following messages are displayed: BUG: kvm_dirty_pages_log_enable_slot: invalid parameters BUG: kvm_dirty_pages_log_enable_slot: invalid parameters That's not new, it sometimes displays that shit on attempt to migrate too, as I mentioned in another thread. Thanks! /mjt > diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c > index 9f61a01..a7f0d3c 100644 > --- a/hw/cirrus_vga.c > +++ b/hw/cirrus_vga.c > @@ -676,15 +676,17 @@ static void cirrus_do_copy(CirrusVGAState *s, int dst, int src, int w, int h) > int sx, sy; > int dx, dy; > int width, height; > + uint32_t start_addr, line_offset, line_compare; > int depth; > int notify = 0; [...] From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=54999 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OCHMb-0004fw-4u for qemu-devel@nongnu.org; Wed, 12 May 2010 15:13:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OCHMZ-0004B4-Eh for qemu-devel@nongnu.org; Wed, 12 May 2010 15:13:01 -0400 Received: from isrv.corpit.ru ([81.13.33.159]:39056) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OCHMZ-0004AW-7C for qemu-devel@nongnu.org; Wed, 12 May 2010 15:12:59 -0400 Message-ID: <4BEAFDB6.6030001@msgid.tls.msk.ru> Date: Wed, 12 May 2010 23:12:54 +0400 From: Michael Tokarev MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: Another SIGFPE in display code, now in cirrus References: <4BE32178.2090103@msgid.tls.msk.ru> <4BE7B8C1.9060807@redhat.com> <4BE7C0A5.3090909@redhat.com> <4BEAA0CC.4090906@redhat.com> <4BEABABC.6080305@redhat.com> <4BEAD232.2040700@redhat.com> <20100512170702.GE19314@shareable.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: Brian Kress , Avi Kivity , KVM list , qemu-devel 12.05.2010 22:11, Stefano Stabellini wrote: > On Wed, 12 May 2010, Jamie Lokier wrote: >> Stefano Stabellini wrote: >>> On Wed, 12 May 2010, Avi Kivity wrote: >>>> It's useful if you have a one-line horizontal pattern you want to >>>> propagate all over. >>> >>> It might be useful all right, but it is not entirely clear what the >>> hardware should do in this situation from the documentation we have, and >>> certainly the current state of the cirrus emulation code doesn't help. >> >> It's quite a reasonable thing for hardware to do, even if not documented. >> It would be surprising if the hardware didn't copy the one-line pattern. > > All right then, you convinced me :) > > This is my proposed solution, however it is untested with Windows NT. Well. At least it does not crash anymore. With this patch applied, when hitting "Test" (of a new video mode) button on WindowsNT, the guest window gets resized to correct size, but is painted with yellow and nothing happens. The CPU enters 100%, and on the kvm console the following messages are displayed: BUG: kvm_dirty_pages_log_enable_slot: invalid parameters BUG: kvm_dirty_pages_log_enable_slot: invalid parameters That's not new, it sometimes displays that shit on attempt to migrate too, as I mentioned in another thread. Thanks! /mjt > diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c > index 9f61a01..a7f0d3c 100644 > --- a/hw/cirrus_vga.c > +++ b/hw/cirrus_vga.c > @@ -676,15 +676,17 @@ static void cirrus_do_copy(CirrusVGAState *s, int dst, int src, int w, int h) > int sx, sy; > int dx, dy; > int width, height; > + uint32_t start_addr, line_offset, line_compare; > int depth; > int notify = 0; [...]