migration: new state "postcopy-recover"

Introducing new migration state "postcopy-recover". If a migration
procedure is paused and the connection is rebuilt afterward
successfully, we'll switch the source VM state from "postcopy-paused" to
the new state "postcopy-recover", then we'll do the resume logic in the
migration thread (along with the return path thread).

This patch only do the state switch on source side. Another following up
patch will handle the state switching on destination side using the same
status bit.

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20180502104740.12123-10-peterx@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>

---
s/2.11/2.13/
This commit is contained in:
Peter Xu 2018-05-02 18:47:25 +08:00 committed by Juan Quintela
parent d3e35b8f62
commit 135b87b4f0
2 changed files with 61 additions and 21 deletions

View file

@ -91,6 +91,8 @@
#
# @postcopy-paused: during postcopy but paused. (since 2.13)
#
# @postcopy-recover: trying to recover from a paused postcopy. (since 2.13)
#
# @completed: migration is finished.
#
# @failed: some error occurred during migration process.
@ -109,7 +111,7 @@
{ 'enum': 'MigrationStatus',
'data': [ 'none', 'setup', 'cancelling', 'cancelled',
'active', 'postcopy-active', 'postcopy-paused',
'completed', 'failed', 'colo',
'postcopy-recover', 'completed', 'failed', 'colo',
'pre-switchover', 'device' ] }
##