[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 5/5] qmp: create QMP implementation of loadvm comman
From: |
Denis V. Lunev |
Subject: |
[Qemu-devel] [PATCH 5/5] qmp: create QMP implementation of loadvm command |
Date: |
Mon, 16 Nov 2015 18:32:30 +0300 |
Signed-off-by: Denis V. Lunev <address@hidden>
CC: Juan Quintela <address@hidden>
CC: Amit Shah <address@hidden>
CC: Markus Armbruster <address@hidden>
CC: Eric Blake <address@hidden>
---
migration/savevm.c | 5 +++++
qapi-schema.json | 13 +++++++++++++
qmp-commands.hx | 23 +++++++++++++++++++++++
3 files changed, 41 insertions(+)
diff --git a/migration/savevm.c b/migration/savevm.c
index 08c6c65..f67b5d9 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -2116,6 +2116,11 @@ int load_vmstate(const char *name, Error **errp)
return 0;
}
+void qmp_loadvm(const char *name, Error **errp)
+{
+ load_vmstate(name, errp);
+}
+
void qmp_delvm(const char *name, Error **errp)
{
BlockDriverState *bs;
diff --git a/qapi-schema.json b/qapi-schema.json
index 193b34f..d133711 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -3988,3 +3988,16 @@
# Since 2.6
##
{ 'command': 'delvm', 'data': {'name': 'str'} }
+
+##
+# @loadvm
+#
+# Load a VM snapshot
+#
+# @name: identifier of a snapshot to be loaded
+#
+# Returns: Nothing on success
+#
+# Since 2.6
+##
+{ 'command': 'loadvm', 'data': {'name': 'str'} }
diff --git a/qmp-commands.hx b/qmp-commands.hx
index b2b17ff..d5f80a1 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -4787,3 +4787,26 @@ EQMP
.args_type = "name:s",
.mhandler.cmd_new = qmp_marshal_delvm,
},
+
+SQMP
+loadvm
+------------------
+
+Load a VM snapshot
+
+Arguments:
+
+- "name": snapshot name
+
+Example:
+
+-> { "execute": "loadvm", "arguments": { "name": "snapshot1" } }
+<- { "return": {} }
+
+EQMP
+
+ {
+ .name = "loadvm",
+ .args_type = "name:s",
+ .mhandler.cmd_new = qmp_marshal_loadvm,
+ },
--
2.5.0