From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: VNC framebuffer block artefacts on qemu-kvm-0.12.1.1 Date: Wed, 06 Jan 2010 13:06:46 -0600 Message-ID: <4B44DF46.3030503@linux.vnet.ibm.com> References: <4B4364AE.8080509@siriusit.co.uk> <20100106135118.GA28640@amt.cnet> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Mark Cave-Ayland , Anthony Liguori , Yaniv Kaul , kvm@vger.kernel.org To: Marcelo Tosatti Return-path: Received: from e38.co.us.ibm.com ([32.97.110.159]:52763 "EHLO e38.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932619Ab0AFTG7 (ORCPT ); Wed, 6 Jan 2010 14:06:59 -0500 Received: from d03relay03.boulder.ibm.com (d03relay03.boulder.ibm.com [9.17.195.228]) by e38.co.us.ibm.com (8.14.3/8.13.1) with ESMTP id o06J1mg3030006 for ; Wed, 6 Jan 2010 12:01:48 -0700 Received: from d03av01.boulder.ibm.com (d03av01.boulder.ibm.com [9.17.195.167]) by d03relay03.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id o06J6lS6119084 for ; Wed, 6 Jan 2010 12:06:48 -0700 Received: from d03av01.boulder.ibm.com (loopback [127.0.0.1]) by d03av01.boulder.ibm.com (8.14.3/8.13.1/NCO v10.0 AVout) with ESMTP id o06J6kGC005301 for ; Wed, 6 Jan 2010 12:06:47 -0700 In-Reply-To: <20100106135118.GA28640@amt.cnet> Sender: kvm-owner@vger.kernel.org List-ID: On 01/06/2010 07:51 AM, Marcelo Tosatti wrote: > On Tue, Jan 05, 2010 at 04:11:26PM +0000, Mark Cave-Ayland wrote: > >> Hi all, >> >> Having just upgraded from kvm-85 to qemu-kvm-0.12.1.1 on one of our >> servers, I've noticed that I am seeing block artefacts when connecting >> using VNC to the graphical VGA console of a WinXP guest. >> >> Looking at the VNC output, what I am seeing is that instead of updating >> some parts of the screen which require a redraw, they are just being >> replaced by light grey blocks of around 16x16 pixels. Generally, but not >> always, several of these blocks appear in a row. Moving the mouse over >> the relevant sections of the screen causes them to be redrawn correctly. >> >> I've tried this using both the cirrus and vga drivers, switching between >> 16/24/32 bit colour and also different resolutions and unfortunately the >> effect still remains :( Is there anything else I can do to help try and >> debug this? Again this is on an x86_64 Debian Lenny host with a 2.6.32.2 >> kernel on Intel. >> > Mark, > > Can you confirm that reverting commit > 02c2b87fff97e77a1f6033fb09f53afa267c0c1e fixes the problem? (patch > attached). > > Anthony: its reproducible with upstream/tcg. What about just adding back this bit: @@ -165,6 +165,8 @@ static void CONCAT(send_hextile_tile_, NAME)(VncState *vs, irow += ds_get_linesize(vs->ds) / sizeof(pixel_t); } + /* A SubrectsColoured subtile invalidates the foreground color */ + *has_fg = 0; if (n_data> (w * h * sizeof(pixel_t))) { n_colors = 4; flags = 0x01; I think I can rationalize why that would be needed. Regards, Anthony Liguori