From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KxNIF-00043u-Dx for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:54:07 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KxNID-00043V-3J for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:54:06 -0500 Received: from [199.232.76.173] (port=40573 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KxNIC-00043S-Vb for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:54:05 -0500 Received: from e5.ny.us.ibm.com ([32.97.182.145]:35154) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KxNIC-0002xt-Lr for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:54:04 -0500 Received: from d01relay04.pok.ibm.com (d01relay04.pok.ibm.com [9.56.227.236]) by e5.ny.us.ibm.com (8.13.8/8.13.8) with ESMTP id mA4Es3Ie028142 for ; Tue, 4 Nov 2008 09:54:03 -0500 Received: from d01av01.pok.ibm.com (d01av01.pok.ibm.com [9.56.224.215]) by d01relay04.pok.ibm.com (8.13.8/8.13.8/NCO v9.1) with ESMTP id mA4EqlpH130248 for ; Tue, 4 Nov 2008 09:52:47 -0500 Received: from d01av01.pok.ibm.com (loopback [127.0.0.1]) by d01av01.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id mA4EqkV3031023 for ; Tue, 4 Nov 2008 09:52:46 -0500 Message-ID: <491061BB.2030905@us.ibm.com> Date: Tue, 04 Nov 2008 08:52:43 -0600 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] vga optmization References: <20081103173111.GC30410@poweredge.glommer> <491034BC.2050806@eu.citrix.com> <49106171.5080209@redhat.com> In-Reply-To: <49106171.5080209@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: Glauber Costa , qemu-devel@nongnu.org Avi Kivity wrote: > Stefano Stabellini wrote: >> Why don't you make qemu_physical_sync_dirty_bitmap take also and end >> address, and you merge the two bitmaps in this address range in this >> function, so you don't have to change cpu_physical_memory_get_dirty at >> all? >> >> I am saying to do something like: >> >> void qemu_physical_sync_dirty_bitmap(ram_addr_t start_addr, >> ram_addr_t end_addr) >> { >> /* sync and merge the two bitmaps between start_addr and end_addr */ >> } >> >> then leave cpu_physical_memory_get_dirty untouched. >> I would prefer this approch, it also leaves more space to other >> optimizations. >> > > That's how current kvm userspace works. It's also more correct, since > the kvm bitmap feeds both the vga dirty bits and the live migration > dirty bits. Yes, I was thinking the same thing myself. Regards, Anthony Liguori