From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: qemu-kvm.git now live Date: Wed, 29 Apr 2009 17:40:03 +0300 Message-ID: <49F866C3.8090904@redhat.com> References: <49F08BD0.6000706@redhat.com> <49F81496.8030407@siemens.com> <49F82F24.8040506@redhat.com> <49F83227.9000502@siemens.com> <49F83630.6020402@redhat.com> <49F83A8A.8040909@siemens.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: KVM list , Anthony Liguori , Hollis Blanchard , "Zhang, Xiantao" , kvm-ppc , "kvm-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Carsten Otte To: Jan Kiszka Return-path: In-Reply-To: <49F83A8A.8040909-kv7WeFo6aLtBDgjK7y7TUQ@public.gmane.org> Sender: kvm-ppc-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: kvm.vger.kernel.org Jan Kiszka wrote: >> If migration disables dirty memory logging, it must keep the vga logging >> enabled, and vice versa. >> > > So we need some notifier callbacks on slot changes so that all users can > re-enable dirty logging after the update as required. Simpler to do reference counting. When a user enables logging for a memory range, the refcount for all slots containing that range gets bumped. When a user enables logging for all of memory, a global refcount is bumped. For a given slot, dirty logging is enabled if either the slot logging refcount or the global logging refcount is nonzero. That's sort of what's implemented in qemu-kvm.git. In qemu.git vga logging does not get disabled, which is really broken. It prevents optimizations like disabling logging when the screen is not displayed to a human. > Where/how does the > migration code disable dirty logging? > Should be phase 3 of ram_save_live(). -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html