From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LD3OZ-0001k9-Iw for qemu-devel@nongnu.org; Wed, 17 Dec 2008 15:53:27 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LD3OW-0001id-Sr for qemu-devel@nongnu.org; Wed, 17 Dec 2008 15:53:27 -0500 Received: from [199.232.76.173] (port=37397 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LD3OW-0001iV-LW for qemu-devel@nongnu.org; Wed, 17 Dec 2008 15:53:24 -0500 Received: from mail-ew0-f21.google.com ([209.85.219.21]:41820) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LD3OV-00027t-Gr for qemu-devel@nongnu.org; Wed, 17 Dec 2008 15:53:24 -0500 Received: by ewy14 with SMTP id 14so111880ewy.10 for ; Wed, 17 Dec 2008 12:53:22 -0800 (PST) Message-ID: <494966BA.7000100@codemonkey.ws> Date: Wed, 17 Dec 2008 14:53:14 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <1229546822-11972-1-git-send-email-glommer@redhat.com> <1229546822-11972-2-git-send-email-glommer@redhat.com> In-Reply-To: <1229546822-11972-2-git-send-email-glommer@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH 1/5] re-register whole area upon lfb unmap. Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Glauber Costa Cc: stefano.stabellini@eu.citrix.com, Ian.Jackson@eu.citrix.com, qemu-devel@nongnu.org, kvm@vger.kernel.org, avi@redhat.com Glauber Costa wrote: > set phys_offset correctly for the whole vga area when unmapping linear vram > (for vga optimization). We first register the old pieces as unassigned > memory, to make things easier for kvm (and possibly other slot based > implementations in the future). Replacing the region directly would > make the slot management significantly more complex. > This change worries me because it involves explicitly unassigning slots and then assigning a new, bigger slot. This is not necessary for TCG. It suggests to me that there's a bug in the kvm slot code and that we're changing QEMU to work around it. That will means there may be other places in the code that are completely valid, but exercise this bug. Or is this purely an optimization? Regards, Anthony Liguori > Signed-off-by: Glauber Costa > --- > hw/cirrus_vga.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c > index 83c5f40..6e81906 100644 > --- a/hw/cirrus_vga.c > +++ b/hw/cirrus_vga.c > @@ -2658,8 +2658,10 @@ static void map_linear_vram(CirrusVGAState *s) > vga_dirty_log_start((VGAState *)s); > } > else { > - cpu_register_physical_memory(isa_mem_base + 0xa0000, 0x8000, s->vga_io_memory); > - cpu_register_physical_memory(isa_mem_base + 0xa8000, 0x8000, s->vga_io_memory); > + cpu_register_physical_memory(isa_mem_base + 0xa0000, 0x8000, IO_MEM_UNASSIGNED); > + cpu_register_physical_memory(isa_mem_base + 0xa8000, 0x8000, IO_MEM_UNASSIGNED); > + > + cpu_register_physical_memory(isa_mem_base + 0xa0000, 0x20000, s->vga_io_memory); > } > > } >