aboutsummaryrefslogtreecommitdiff
path: root/qapi-schema.json
diff options
context:
space:
mode:
authorPeter Lieven <pl@kamp.de>2013-07-18 09:48:50 +0200
committerStefan Hajnoczi <stefanha@redhat.com>2013-07-19 12:29:21 +0800
commit323004a39d4d8d33c744a5b108f80bfe6402fca3 (patch)
treee232d3657f529de5ac35cd785fa6fa387ab90116 /qapi-schema.json
parent8bf9344ad6883e6d85b69bab36d9d76e4257e9ed (diff)
block-migration: efficiently encode zero blocks
this patch adds a efficient encoding for zero blocks by adding a new flag indicating a block is completely zero. additionally bdrv_write_zeros() is used at the destination to efficiently write these zeroes. depending on the implementation this avoids that the destination target gets fully provisioned. Signed-off-by: Peter Lieven <pl@kamp.de> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'qapi-schema.json')
-rw-r--r--qapi-schema.json8
1 files changed, 7 insertions, 1 deletions
diff --git a/qapi-schema.json b/qapi-schema.json
index 8d33d527d3..592bb9c7a1 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -613,10 +613,16 @@
# Disabled by default. Experimental: may (or may not) be renamed after
# further testing is complete. (since 1.6)
#
+# @zero-blocks: During storage migration encode blocks of zeroes efficiently. This
+# essentially saves 1MB of zeroes per block on the wire. Enabling requires
+# source and target VM to support this feature. To enable it is sufficient
+# to enable the capability on the source VM. The feature is disabled by
+# default. (since 1.6)
+#
# Since: 1.2
##
{ 'enum': 'MigrationCapability',
- 'data': ['xbzrle', 'x-rdma-pin-all', 'auto-converge'] }
+ 'data': ['xbzrle', 'x-rdma-pin-all', 'auto-converge', 'zero-blocks'] }
##
# @MigrationCapabilityStatus