summaryrefslogtreecommitdiffstats
path: root/qapi-schema.json
diff options
context:
space:
mode:
authorWenchao Xia2013-09-11 08:04:34 +0200
committerKevin Wolf2013-09-12 10:12:47 +0200
commitbbe860104f0544d7863296606e042cc62bf7ab4b (patch)
tree2d6b813d3525433baa1f1fa8cd3516c913644f08 /qapi-schema.json
parentsnapshot: distinguish id and name in snapshot delete (diff)
downloadqemu-bbe860104f0544d7863296606e042cc62bf7ab4b.tar.gz
qemu-bbe860104f0544d7863296606e042cc62bf7ab4b.tar.xz
qemu-bbe860104f0544d7863296606e042cc62bf7ab4b.zip
qmp: add internal snapshot support in qmp_transaction
Unlike savevm, the qmp_transaction interface will not generate snapshot name automatically, saving trouble to return information of the new created snapshot. Although qcow2 support storing multiple snapshots with same name but different ID, here it will fail when an snapshot with that name already exist before the operation. Format such as rbd do not support ID at all, and in most case, it means trouble to user when he faces multiple snapshots with same name, so ban that case. Request with empty name will be rejected. Snapshot ID can't be specified in this interface. Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'qapi-schema.json')
-rw-r--r--qapi-schema.json19
1 files changed, 18 insertions, 1 deletions
diff --git a/qapi-schema.json b/qapi-schema.json
index 2b2c8bce07..77bbbf59cf 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -1686,6 +1686,22 @@
'*mode': 'NewImageMode' } }
##
+# @BlockdevSnapshotInternal
+#
+# @device: the name of the device to generate the snapshot from
+#
+# @name: the name of the internal snapshot to be created
+#
+# Notes: In transaction, if @name is empty, or any snapshot matching @name
+# exists, the operation will fail. Only some image formats support it,
+# for example, qcow2, rbd, and sheepdog.
+#
+# Since: 1.7
+##
+{ 'type': 'BlockdevSnapshotInternal',
+ 'data': { 'device': 'str', 'name': 'str' } }
+
+##
# @DriveBackup
#
# @device: the name of the device which should be copied.
@@ -1747,7 +1763,8 @@
'data': {
'blockdev-snapshot-sync': 'BlockdevSnapshot',
'drive-backup': 'DriveBackup',
- 'abort': 'Abort'
+ 'abort': 'Abort',
+ 'blockdev-snapshot-internal-sync': 'BlockdevSnapshotInternal'
} }
##