aboutsummaryrefslogtreecommitdiff
path: root/qapi-schema.json
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@linux.vnet.ibm.com>2012-01-18 14:40:48 +0000
committerKevin Wolf <kwolf@redhat.com>2012-01-26 14:49:18 +0100
commit370521a1d6f5537ea7271c119f3fbb7b0fa57063 (patch)
treec94fba9ff82e7690dd9d20a6420cd808b40d5d11 /qapi-schema.json
parent2d47c6e9aa2475807913bd46dfca55980cca9fb4 (diff)
downloadqemu-370521a1d6f5537ea7271c119f3fbb7b0fa57063.zip
qemu-370521a1d6f5537ea7271c119f3fbb7b0fa57063.tar.gz
qemu-370521a1d6f5537ea7271c119f3fbb7b0fa57063.tar.bz2
qmp: add block_job_cancel command
Add block_job_cancel, which stops an active block streaming operation. When the operation has been cancelled the new BLOCK_JOB_CANCELLED event is emitted. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'qapi-schema.json')
-rw-r--r--qapi-schema.json29
1 files changed, 29 insertions, 0 deletions
diff --git a/qapi-schema.json b/qapi-schema.json
index d9f66c6..02c4e22 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -1487,3 +1487,32 @@
##
{ 'command': 'block_job_set_speed',
'data': { 'device': 'str', 'value': 'int' } }
+
+##
+# @block_job_cancel:
+#
+# Stop an active block streaming operation.
+#
+# This command returns immediately after marking the active block streaming
+# operation for cancellation. It is an error to call this command if no
+# operation is in progress.
+#
+# The operation will cancel as soon as possible and then emit the
+# BLOCK_JOB_CANCELLED event. Before that happens the job is still visible when
+# enumerated using query-block-jobs.
+#
+# The image file retains its backing file unless the streaming operation happens
+# to complete just as it is being cancelled.
+#
+# A new block streaming operation can be started at a later time to finish
+# copying all data from the backing file.
+#
+# @device: the device name
+#
+# Returns: Nothing on success
+# If streaming is not active on this device, DeviceNotActive
+# If cancellation already in progress, DeviceInUse
+#
+# Since: 1.1
+##
+{ 'command': 'block_job_cancel', 'data': { 'device': 'str' } }