From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47946) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X4FRt-0005ry-OK for qemu-devel@nongnu.org; Mon, 07 Jul 2014 16:23:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X4FRo-00052P-PS for qemu-devel@nongnu.org; Mon, 07 Jul 2014 16:23:41 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58841) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X4FRo-00052K-H1 for qemu-devel@nongnu.org; Mon, 07 Jul 2014 16:23:36 -0400 Date: Mon, 7 Jul 2014 22:23:27 +0200 From: "Dr. David Alan Gilbert" Message-ID: <20140707202327.GA2568@work-vm> References: <1404495717-4239-1-git-send-email-dgilbert@redhat.com> <1404495717-4239-17-git-send-email-dgilbert@redhat.com> <53BAF7EC.7090809@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <53BAF7EC.7090809@redhat.com> Subject: Re: [Qemu-devel] [PATCH 16/46] Add migration-capability boolean for postcopy-ram. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eric Blake Cc: aarcange@redhat.com, yamahata@private.email.ne.jp, quintela@redhat.com, qemu-devel@nongnu.org, lilei@linux.vnet.ibm.com * Eric Blake (eblake@redhat.com) wrote: > On 07/04/2014 11:41 AM, Dr. David Alan Gilbert (git) wrote: > > From: "Dr. David Alan Gilbert" > > > > Signed-off-by: Dr. David Alan Gilbert > > --- > > include/migration/migration.h | 1 + > > migration.c | 9 +++++++++ > > qapi-schema.json | 6 +++++- > > 3 files changed, 15 insertions(+), 1 deletion(-) > > > > > +++ b/qapi-schema.json > > @@ -491,10 +491,14 @@ > > # @auto-converge: If enabled, QEMU will automatically throttle down the guest > > # to speed up convergence of RAM migration. (since 1.6) > > # > > +# @x-postcopy-ram: Start executing on the migration target before all of RAM has been > > +# migrated, pulling the remaining pages along as needed. NOTE: If the > > +# migration fails during postcopy the VM will fail. (since 2.2) > > How does this work with libvirt's current insistence that it manually > resumes the guest on the destination in order to give feedback to the > source on whether it was successful? I'm not sure if enabling this bool > is the right thing to do, or if we just need more visibility (such as > events rather than the current state of polling) for libvirt to know > that it is time to resume the destination and start the post-copy phase. That's an interesting overlap with Paolo's question. (and approximately the same answer) I think what I need to do for that is: 1) As for precopy add the option not to start the destination CPU on entry to postcopy; I think that's OK, because we can carry on in postcopy mode even if the destination CPU isn't running, we just won't generate page requests. 2) Finally fix up the old request libvirt has for events based on migration state. Admittedly I don't quite understand how (1) is supposed to interact with device state. Dave > -- > Eric Blake eblake redhat com +1-919-301-3266 > Libvirt virtualization library http://libvirt.org > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK