From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:58380) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TEvz3-00027C-Ks for qemu-devel@nongnu.org; Fri, 21 Sep 2012 01:41:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TEvz2-0002Du-JJ for qemu-devel@nongnu.org; Fri, 21 Sep 2012 01:41:01 -0400 Received: from mx1.redhat.com ([209.132.183.28]:25778) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TEvz2-0002Dh-Ak for qemu-devel@nongnu.org; Fri, 21 Sep 2012 01:41:00 -0400 Message-ID: <505BFDE4.7070603@redhat.com> Date: Fri, 21 Sep 2012 07:40:52 +0200 From: Gerd Hoffmann MIME-Version: 1.0 References: <1348053341-29212-1-git-send-email-kraxel@redhat.com> <1348053341-29212-8-git-send-email-kraxel@redhat.com> <505AB4C9.9070809@redhat.com> <505B1F46.1080303@redhat.com> <505B35F6.8060302@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 7/9] fbdev: move to pixman List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: "qemu-devel@nongnu.org" On 09/20/12 17:33, Stefano Stabellini wrote: > On Thu, 20 Sep 2012, Stefano Stabellini wrote: >> On Thu, 20 Sep 2012, Gerd Hoffmann wrote: >>> Hi, >>> >>>>> In any graphics mode relevant today vga emulation will use >>>>> qemu_create_displaysurface_from(). Whenever a DisplayAllocator is >>>>> present or not doesn't make any difference then. >>>> >>>> Unfortunately if my memory doesn't fail me, Windows uses 24 bpp. >>>> So actually the DisplayAllocator interface is the one that is going to be >>>> used all the time. >>> >>> Guess we want implement 24bpp support in displaylisteners then. >> >> vnc doesn't support 24bpp > > I mean the vnc protocol doesn't support 24bpp, so it couldn't help vnc > (I am aware that at the moment vnc is not using a DisplayAllocator, but > I guess it could in the future). Yes, vnc should transform 24bpp into 32bpp. Given that vnc keeps a shadow copy of the guest display _anyway_ (to figure which parts of the guest display did _really_ change) we don't have to do any extra copying work in vnc. We can just keep the shadow at 32bpp. The 'compare+copy' code in vnc_refresh_server_surface must be able to cope with 24bpp guest + 32bpp server surface. Done. And we've dropped the 24->32 bpp conversion in the vga emulation along the way. cheers, Gerd