From: "Dr. David Alan Gilbert (git)" <dgilbert@redhat.com>
To: qemu-devel@nongnu.org, kwolf@redhat.com, jdenemar@redhat.com,
wangjie88@huawei.com, quintela@redhat.com, peterx@redhat.com,
mreitz@redhat.com
Cc: berrange@redhat.com, eblake@redhat.com, fuweiwei2@huawei.com
Subject: [Qemu-devel] [PATCH v4 4/7] migration: migrate-continue
Date: Fri, 20 Oct 2017 10:05:53 +0100 [thread overview]
Message-ID: <20171020090556.18631-5-dgilbert@redhat.com> (raw)
In-Reply-To: <20171020090556.18631-1-dgilbert@redhat.com>
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
A new qmp command allows the caller to continue from a given
paused state.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
---
migration/migration.c | 11 +++++++++++
qapi/migration.json | 17 +++++++++++++++++
2 files changed, 28 insertions(+)
diff --git a/migration/migration.c b/migration/migration.c
index 6c6d5e2c75..c9a3ee9efd 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -1368,6 +1368,17 @@ void qmp_migrate_cancel(Error **errp)
migrate_fd_cancel(migrate_get_current());
}
+void qmp_migrate_continue(MigrationStatus state, Error **errp)
+{
+ MigrationState *s = migrate_get_current();
+ if (s->state != state) {
+ error_setg(errp, "Migration not in expected state: %s",
+ MigrationStatus_str(s->state));
+ return;
+ }
+ qemu_sem_post(&s->pause_sem);
+}
+
void qmp_migrate_set_cache_size(int64_t value, Error **errp)
{
MigrationState *s = migrate_get_current();
diff --git a/qapi/migration.json b/qapi/migration.json
index b56f95db64..272f191551 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -877,6 +877,23 @@
{ 'command': 'migrate_cancel' }
##
+# @migrate-continue:
+#
+# Continue migration when it's in a paused state.
+#
+# @state: The state the migration is currently expected to be in
+#
+# Returns: nothing on success
+# Since: 2.11
+# Example:
+#
+# -> { "execute": "migrate-continue" , "arguments":
+# { "state": "pre-switchover" } }
+# <- { "return": {} }
+##
+{ 'command': 'migrate-continue', 'data': {'state': 'MigrationStatus'} }
+
+##
# @migrate_set_downtime:
#
# Set maximum tolerated downtime for migration.
--
2.13.6
next prev parent reply other threads:[~2017-10-20 9:06 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-20 9:05 [Qemu-devel] [PATCH v4 0/7] migration: pause-before-switchover Dr. David Alan Gilbert (git)
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 1/7] migration: Add 'pause-before-switchover' capability Dr. David Alan Gilbert (git)
2017-10-23 10:55 ` Juan Quintela
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 2/7] migration: Add 'pre-switchover' and 'device' statuses Dr. David Alan Gilbert (git)
2017-10-23 10:55 ` Juan Quintela
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 3/7] migration: Wait for semaphore before completing migration Dr. David Alan Gilbert (git)
2017-10-23 11:02 ` Juan Quintela
2017-10-20 9:05 ` Dr. David Alan Gilbert (git) [this message]
2017-10-23 11:03 ` [Qemu-devel] [PATCH v4 4/7] migration: migrate-continue Juan Quintela
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 5/7] migrate: HMP migate_continue Dr. David Alan Gilbert (git)
2017-10-23 11:03 ` Juan Quintela
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 6/7] migration: allow cancel to unpause Dr. David Alan Gilbert (git)
2017-10-23 11:04 ` Juan Quintela
2017-10-20 9:05 ` [Qemu-devel] [PATCH v4 7/7] migration: pause-before-switchover for postcopy Dr. David Alan Gilbert (git)
2017-10-23 11:05 ` Juan Quintela
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=20171020090556.18631-5-dgilbert@redhat.com \
--to=dgilbert@redhat.com \
--cc=berrange@redhat.com \
--cc=eblake@redhat.com \
--cc=fuweiwei2@huawei.com \
--cc=jdenemar@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=peterx@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.