From: Peter Xu <peterx@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, jdenemar@redhat.com,
wangjie88@huawei.com, quintela@redhat.com, mreitz@redhat.com,
berrange@redhat.com, eblake@redhat.com, fuweiwei2@huawei.com
Subject: Re: [Qemu-devel] [PATCH v3 0/7] migration: pause-before-switchover
Date: Fri, 20 Oct 2017 10:42:07 +0800 [thread overview]
Message-ID: <20171020024207.GA3990@pxdev.xzpeter.org> (raw)
In-Reply-To: <20171019112122.GF2281@work-vm>
On Thu, Oct 19, 2017 at 12:21:23PM +0100, Dr. David Alan Gilbert wrote:
> * Peter Xu (peterx@redhat.com) wrote:
> > On Wed, Oct 18, 2017 at 06:40:06PM +0100, Dr. David Alan Gilbert (git) wrote:
> >
> > [...]
> >
> > > The precopy flow is:
> > > active->pre-switchover->device->completed
> > >
> > > The postcopy flow is:
> > > active->pre-switchover->postcopy-active->completed
> >
> > The naming is still slightly confusing to me:
> >
> > (1) we have a capability called "pause-before-switchover", so it feels
> > like there is something called "switchover" and if we enable this
> > we'll pause before that point;
> >
> > (2) we have a new status "pre-switchover", it feels like that's the
> > point before we are in "switchover" state;
> >
> > (3) we don't really have a "switchover" state, but instead it's called
> > "device" which is exactly the "switchover" action.
> >
> > Considering (1) and (2), I would prefer "device" state to be just
> > "switchover"...
>
> Yes I stuck to pause-before-device and device originally; but
> what we're doing during the 'device' stage is mostly saving device
> state; the actual switchover occurs at the end. So hmm.
That's fine to me.
>
> > Further, not sure we can unify the state transition as well (say, we
> > add this switchover state even without cap "pause-before-switchover"
> > set, although it does not make much sense itself). Then, we can also
> > unify the precopy/postcopy state machine into one:
> >
> > active->
> > [pre-switchover->] (optional, decided by "pause-before-switchover")
> > switchover->
> > [postcopy-active->] (optional, decided by "postcopy-arm")
> > completed
>
> I didn't want to change the state transition behaviour without the
> capability set, since that could upset an existing libvirt that would
> get confused by the new state.
Indeed. However this (and also Juan's xbzrle cache size series) lets
me think about whether we should loosen the "compatibility" sometimes.
For most of the times, we are paying the compatibility bill by
complicating the code logic. For this one, we satisfy live block
migration logic to introduce two new state transition paths (for
precopy and postcopy). I am just afraid we need to pay a larger bill
some day.
But I'd say it's only my worry; maybe it's just too superfluous.
(I provided all r-bs, so the series looks good to me after all)
Thanks,
--
Peter Xu
next prev parent reply other threads:[~2017-10-20 2:42 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-18 17:40 [Qemu-devel] [PATCH v3 0/7] migration: pause-before-switchover Dr. David Alan Gilbert (git)
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 1/7] migration: Add 'pause-before-switchover' capability Dr. David Alan Gilbert (git)
2017-10-19 4:17 ` Peter Xu
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 2/7] migration: Add 'pre-switchover' and 'device' statuses Dr. David Alan Gilbert (git)
2017-10-19 4:34 ` Peter Xu
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 3/7] migration: Wait for semaphore before completing migration Dr. David Alan Gilbert (git)
2017-10-19 4:39 ` Peter Xu
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 4/7] migration: migrate-continue Dr. David Alan Gilbert (git)
2017-10-19 4:43 ` Peter Xu
2017-10-19 14:33 ` Jiri Denemark
2017-10-19 14:37 ` Dr. David Alan Gilbert
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 5/7] migrate: HMP migate_continue Dr. David Alan Gilbert (git)
2017-10-19 4:44 ` Peter Xu
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 6/7] migration: allow cancel to unpause Dr. David Alan Gilbert (git)
2017-10-19 4:44 ` Peter Xu
2017-10-18 17:40 ` [Qemu-devel] [PATCH v3 7/7] migration: pause-before-switchover for postcopy Dr. David Alan Gilbert (git)
2017-10-19 5:08 ` Peter Xu
2017-10-19 4:31 ` [Qemu-devel] [PATCH v3 0/7] migration: pause-before-switchover Peter Xu
2017-10-19 11:21 ` Dr. David Alan Gilbert
2017-10-20 2:42 ` Peter Xu [this message]
2017-10-20 8:04 ` Dr. David Alan Gilbert
2017-10-19 15:24 ` Jiri Denemark
2017-10-19 19:10 ` Dr. David Alan Gilbert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171020024207.GA3990@pxdev.xzpeter.org \
--to=peterx@redhat.com \
--cc=berrange@redhat.com \
--cc=dgilbert@redhat.com \
--cc=eblake@redhat.com \
--cc=fuweiwei2@huawei.com \
--cc=jdenemar@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=wangjie88@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).