From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KxNFo-00030k-7x for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:51:36 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KxNFm-0002zo-Jw for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:51:35 -0500 Received: from [199.232.76.173] (port=45155 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KxNFm-0002zi-BD for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:51:34 -0500 Received: from mx2.redhat.com ([66.187.237.31]:56110) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KxNFl-0002g0-TN for qemu-devel@nongnu.org; Tue, 04 Nov 2008 09:51:34 -0500 Message-ID: <49106171.5080209@redhat.com> Date: Tue, 04 Nov 2008 16:51:29 +0200 From: Avi Kivity MIME-Version: 1.0 Subject: Re: [Qemu-devel] vga optmization References: <20081103173111.GC30410@poweredge.glommer> <491034BC.2050806@eu.citrix.com> In-Reply-To: <491034BC.2050806@eu.citrix.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: qemu-devel@nongnu.org Cc: Glauber Costa , aliguori@us.ibm.com 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. -- error compiling committee.c: too many arguments to function