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"...
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
(Sorry I am discussing the naming again instead of reviewing real
stuff!)
--
Peter Xu