26ba25
From 53c3256f19482b02a18c9402908df39ec498fdef Mon Sep 17 00:00:00 2001
26ba25
From: Kevin Wolf <kwolf@redhat.com>
26ba25
Date: Tue, 26 Jun 2018 09:48:52 +0200
26ba25
Subject: [PATCH 144/268] block/create: Mark blockdev-create stable
26ba25
26ba25
RH-Author: Kevin Wolf <kwolf@redhat.com>
26ba25
Message-id: <20180626094856.6924-70-kwolf@redhat.com>
26ba25
Patchwork-id: 81104
26ba25
O-Subject: [RHV-7.6 qemu-kvm-rhev PATCH v2 69/73] block/create: Mark blockdev-create stable
26ba25
Bugzilla: 1513543
26ba25
RH-Acked-by: Jeffrey Cody <jcody@redhat.com>
26ba25
RH-Acked-by: Max Reitz <mreitz@redhat.com>
26ba25
RH-Acked-by: Fam Zheng <famz@redhat.com>
26ba25
26ba25
We're ready to declare the blockdev-create job stable. This renames the
26ba25
corresponding QMP command from x-blockdev-create to blockdev-create.
26ba25
26ba25
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
26ba25
Reviewed-by: Max Reitz <mreitz@redhat.com>
26ba25
Reviewed-by: Jeff Cody <jcody@redhat.com>
26ba25
(cherry picked from commit 3fb588a0f2c006122c34e1960a15c87ae2b927eb)
26ba25
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
26ba25
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
26ba25
---
26ba25
 block/create.c             |  4 ++--
26ba25
 qapi/block-core.json       |  4 ++--
26ba25
 qapi/job.json              |  2 +-
26ba25
 tests/qemu-iotests/206     |  2 +-
26ba25
 tests/qemu-iotests/206.out | 54 +++++++++++++++++++++++-----------------------
26ba25
 tests/qemu-iotests/207     |  2 +-
26ba25
 tests/qemu-iotests/207.out | 18 ++++++++--------
26ba25
 tests/qemu-iotests/210     |  2 +-
26ba25
 tests/qemu-iotests/210.out | 18 ++++++++--------
26ba25
 tests/qemu-iotests/211     |  2 +-
26ba25
 tests/qemu-iotests/211.out | 24 ++++++++++-----------
26ba25
 tests/qemu-iotests/212     |  2 +-
26ba25
 tests/qemu-iotests/212.out | 42 ++++++++++++++++++------------------
26ba25
 tests/qemu-iotests/213     |  2 +-
26ba25
 tests/qemu-iotests/213.out | 44 ++++++++++++++++++-------------------
26ba25
 15 files changed, 111 insertions(+), 111 deletions(-)
26ba25
26ba25
diff --git a/block/create.c b/block/create.c
26ba25
index 1a263e4..915cd41 100644
26ba25
--- a/block/create.c
26ba25
+++ b/block/create.c
26ba25
@@ -63,8 +63,8 @@ static const JobDriver blockdev_create_job_driver = {
26ba25
     .start         = blockdev_create_run,
26ba25
 };
26ba25
 
26ba25
-void qmp_x_blockdev_create(const char *job_id, BlockdevCreateOptions *options,
26ba25
-                           Error **errp)
26ba25
+void qmp_blockdev_create(const char *job_id, BlockdevCreateOptions *options,
26ba25
+                         Error **errp)
26ba25
 {
26ba25
     BlockdevCreateJob *s;
26ba25
     const char *fmt = BlockdevDriver_str(options->driver);
26ba25
diff --git a/qapi/block-core.json b/qapi/block-core.json
26ba25
index 050fbf3..b0f41f1 100644
26ba25
--- a/qapi/block-core.json
26ba25
+++ b/qapi/block-core.json
26ba25
@@ -4025,7 +4025,7 @@
26ba25
   } }
26ba25
 
26ba25
 ##
26ba25
-# @x-blockdev-create:
26ba25
+# @blockdev-create:
26ba25
 #
26ba25
 # Starts a job to create an image format on a given node. The job is
26ba25
 # automatically finalized, but a manual job-dismiss is required.
26ba25
@@ -4036,7 +4036,7 @@
26ba25
 #
26ba25
 # Since: 3.0
26ba25
 ##
26ba25
-{ 'command': 'x-blockdev-create',
26ba25
+{ 'command': 'blockdev-create',
26ba25
   'data': { 'job-id': 'str',
26ba25
             'options': 'BlockdevCreateOptions' } }
26ba25
 
26ba25
diff --git a/qapi/job.json b/qapi/job.json
26ba25
index 69c1970..17d1003 100644
26ba25
--- a/qapi/job.json
26ba25
+++ b/qapi/job.json
26ba25
@@ -17,7 +17,7 @@
26ba25
 #
26ba25
 # @backup: drive backup job type, see "drive-backup"
26ba25
 #
26ba25
-# @create: image creation job type, see "x-blockdev-create" (since 3.0)
26ba25
+# @create: image creation job type, see "blockdev-create" (since 3.0)
26ba25
 #
26ba25
 # Since: 1.7
26ba25
 ##
26ba25
diff --git a/tests/qemu-iotests/206 b/tests/qemu-iotests/206
26ba25
index b8cf2e7..128c334 100755
26ba25
--- a/tests/qemu-iotests/206
26ba25
+++ b/tests/qemu-iotests/206
26ba25
@@ -26,7 +26,7 @@ from iotests import imgfmt
26ba25
 iotests.verify_image_format(supported_fmts=['qcow2'])
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options)
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options)
26ba25
 
26ba25
     if 'return' in result:
26ba25
         assert result['return'] == {}
26ba25
diff --git a/tests/qemu-iotests/206.out b/tests/qemu-iotests/206.out
26ba25
index 34451a3..789eebe 100644
26ba25
--- a/tests/qemu-iotests/206.out
26ba25
+++ b/tests/qemu-iotests/206.out
26ba25
@@ -1,13 +1,13 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 {'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}
26ba25
 {u'return': {}}
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'imgfile', 'size': 134217728}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'imgfile', 'size': 134217728}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -24,12 +24,12 @@ Format specific information:
26ba25
 
26ba25
 === Successful image creation (inline blockdev-add, explicit defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': False, 'preallocation': 'off', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': False, 'preallocation': 'off', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 65536, 'refcount-bits': 16, 'version': 'v3', 'preallocation': 'off', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': False, 'driver': 'qcow2', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 65536, 'refcount-bits': 16, 'version': 'v3', 'preallocation': 'off', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': False, 'driver': 'qcow2', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -46,12 +46,12 @@ Format specific information:
26ba25
 
26ba25
 === Successful image creation (v3 non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': True, 'preallocation': 'falloc', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': True, 'preallocation': 'falloc', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 2097152, 'refcount-bits': 1, 'version': 'v3', 'preallocation': 'metadata', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': True, 'driver': 'qcow2', 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 2097152, 'refcount-bits': 1, 'version': 'v3', 'preallocation': 'metadata', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': True, 'driver': 'qcow2', 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -68,12 +68,12 @@ Format specific information:
26ba25
 
26ba25
 === Successful image creation (v2 non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'backing-fmt': 'qcow2', 'driver': 'qcow2', 'version': 'v2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'backing-file': 'TEST_DIR/PID-t.qcow2.base', 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'backing-fmt': 'qcow2', 'driver': 'qcow2', 'version': 'v2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'backing-file': 'TEST_DIR/PID-t.qcow2.base', 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -90,7 +90,7 @@ Format specific information:
26ba25
 
26ba25
 === Successful image creation (encrypted) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'encrypt': {'key-secret': 'keysec0', 'iter-time': 10, 'cipher-mode': 'ctr', 'ivgen-hash-alg': 'md5', 'cipher-alg': 'twofish-128', 'format': 'luks', 'ivgen-alg': 'plain64', 'hash-alg': 'sha1'}, 'driver': 'qcow2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'encrypt': {'key-secret': 'keysec0', 'iter-time': 10, 'cipher-mode': 'ctr', 'ivgen-hash-alg': 'md5', 'cipher-alg': 'twofish-128', 'format': 'luks', 'ivgen-alg': 'plain64', 'hash-alg': 'sha1'}, 'driver': 'qcow2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -144,111 +144,111 @@ Format specific information:
26ba25
 
26ba25
 === Invalid BlockdevRef ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 === Invalid sizes ===
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 1234}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 1234}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size must be a multiple of 512 bytes
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Could not resize image: Image size cannot be negative
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Could not resize image: Image size cannot be negative
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Could not resize image: Failed to grow the L1 table: File too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 === Invalid version ===
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'version': 'v1', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'version': 'v1', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'error': {u'class': u'GenericError', u'desc': u"Invalid parameter 'v1'"}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'lazy-refcounts': True, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'lazy-refcounts': True, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Lazy refcounts only supported with compatibility level 1.1 and above (use version=v3 or greater)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 8, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 8, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Different refcount widths than 16 bits require compatibility level 1.1 or above (use version=v3 or greater)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 === Invalid backing file options ===
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'full', 'driver': 'qcow2', 'backing-file': '/dev/null', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'full', 'driver': 'qcow2', 'backing-file': '/dev/null', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Backing file and preallocation cannot be used at the same time
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'backing-fmt': 'qcow2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'backing-fmt': 'qcow2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Backing format cannot be used without backing file
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 === Invalid cluster size ===
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1234, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1234, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a power of two between 512 and 2048k
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a power of two between 512 and 2048k
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 4194304, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 4194304, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a power of two between 512 and 2048k
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a power of two between 512 and 2048k
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'driver': 'qcow2', 'file': 'node0', 'size': 281474976710656}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'driver': 'qcow2', 'file': 'node0', 'size': 281474976710656}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Could not resize image: Failed to grow the L1 table: File too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 === Invalid refcount width ===
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Refcount width must be a power of two and may not exceed 64 bits
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Refcount width must be a power of two and may not exceed 64 bits
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 7, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 7, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Refcount width must be a power of two and may not exceed 64 bits
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
diff --git a/tests/qemu-iotests/207 b/tests/qemu-iotests/207
26ba25
index b595c92..444ae23 100755
26ba25
--- a/tests/qemu-iotests/207
26ba25
+++ b/tests/qemu-iotests/207
26ba25
@@ -31,7 +31,7 @@ def filter_hash(msg):
26ba25
     return re.sub("'hash': '[0-9a-f]+'", "'hash': HASH", msg)
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options,
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options,
26ba25
                         filters=[iotests.filter_testfiles, filter_hash])
26ba25
 
26ba25
     if 'return' in result:
26ba25
diff --git a/tests/qemu-iotests/207.out b/tests/qemu-iotests/207.out
26ba25
index 5eee17b..078b7e6 100644
26ba25
--- a/tests/qemu-iotests/207.out
26ba25
+++ b/tests/qemu-iotests/207.out
26ba25
@@ -1,6 +1,6 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -16,7 +16,7 @@ virtual size: 4.0M (4194304 bytes)
26ba25
 
26ba25
 === Test host-key-check options ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'none'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 8388608}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'none'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 8388608}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -25,7 +25,7 @@ image: json:{"driver": "IMGFMT", "file": {"server.host": "127.0.0.1", "server.po
26ba25
 file format: IMGFMT
26ba25
 virtual size: 8.0M (8388608 bytes)
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'known_hosts'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'known_hosts'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -34,13 +34,13 @@ image: json:{"driver": "IMGFMT", "file": {"server.host": "127.0.0.1", "server.po
26ba25
 file format: IMGFMT
26ba25
 virtual size: 4.0M (4194304 bytes)
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': 'wrong', 'type': 'md5', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 2097152}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': 'wrong', 'type': 'md5', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 2097152}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: remote host key does not match host_key_check 'wrong'
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': HASH, 'type': 'md5', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 8388608}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': HASH, 'type': 'md5', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 8388608}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -49,13 +49,13 @@ image: json:{"driver": "IMGFMT", "file": {"server.host": "127.0.0.1", "server.po
26ba25
 file format: IMGFMT
26ba25
 virtual size: 8.0M (8388608 bytes)
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': 'wrong', 'type': 'sha1', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 2097152}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': 'wrong', 'type': 'sha1', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 2097152}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: remote host key does not match host_key_check 'wrong'
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': HASH, 'type': 'sha1', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'hash': HASH, 'type': 'sha1', 'mode': 'hash'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -66,13 +66,13 @@ virtual size: 4.0M (4194304 bytes)
26ba25
 
26ba25
 === Invalid path and user ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': '/this/is/not/an/existing/path', 'host-key-check': {'mode': 'none'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': '/this/is/not/an/existing/path', 'host-key-check': {'mode': 'none'}, 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: failed to open remote file '/this/is/not/an/existing/path': Failed opening remote file (libssh2 error code: -31)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'none'}, 'user': 'invalid user', 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'ssh', 'location': {'path': 'TEST_DIR/PID-t.img', 'host-key-check': {'mode': 'none'}, 'user': 'invalid user', 'server': {'host': '127.0.0.1', 'port': '22'}}, 'size': 4194304}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: failed to authenticate using publickey authentication and the identities held by your ssh-agent
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
diff --git a/tests/qemu-iotests/210 b/tests/qemu-iotests/210
26ba25
index ff4fdde..d142841 100755
26ba25
--- a/tests/qemu-iotests/210
26ba25
+++ b/tests/qemu-iotests/210
26ba25
@@ -27,7 +27,7 @@ iotests.verify_image_format(supported_fmts=['luks'])
26ba25
 iotests.verify_protocol(supported=['file'])
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options)
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options)
26ba25
 
26ba25
     if 'return' in result:
26ba25
         assert result['return'] == {}
26ba25
diff --git a/tests/qemu-iotests/210.out b/tests/qemu-iotests/210.out
26ba25
index 0e6e5c0..078ba54 100644
26ba25
--- a/tests/qemu-iotests/210.out
26ba25
+++ b/tests/qemu-iotests/210.out
26ba25
@@ -1,13 +1,13 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 {'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}}
26ba25
 {u'return': {}}
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'iter-time': 10, 'driver': 'luks', 'file': 'imgfile', 'size': 134217728}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'iter-time': 10, 'driver': 'luks', 'file': 'imgfile', 'size': 134217728}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -54,12 +54,12 @@ Format specific information:
26ba25
 
26ba25
 === Successful image creation (with non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'hash-alg': 'sha1', 'cipher-mode': 'ctr', 'cipher-alg': 'twofish-128', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}, 'iter-time': 10, 'ivgen-alg': 'plain64', 'ivgen-hash-alg': 'md5', 'driver': 'luks', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'hash-alg': 'sha1', 'cipher-mode': 'ctr', 'cipher-alg': 'twofish-128', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.luks'}, 'iter-time': 10, 'ivgen-alg': 'plain64', 'ivgen-hash-alg': 'md5', 'driver': 'luks', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -106,7 +106,7 @@ Format specific information:
26ba25
 
26ba25
 === Invalid BlockdevRef ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'luks', 'file': "this doesn't exist", 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'luks', 'file': "this doesn't exist", 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -114,7 +114,7 @@ Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exi
26ba25
 
26ba25
 === Zero size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'iter-time': 10, 'driver': 'luks', 'file': 'node0', 'size': 0}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'iter-time': 10, 'driver': 'luks', 'file': 'node0', 'size': 0}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -161,19 +161,19 @@ Format specific information:
26ba25
 
26ba25
 === Invalid sizes ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: The requested file size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: The requested file size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'key-secret': 'keysec0', 'driver': 'luks', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: The requested file size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
diff --git a/tests/qemu-iotests/211 b/tests/qemu-iotests/211
26ba25
index b45f886..7b7985d 100755
26ba25
--- a/tests/qemu-iotests/211
26ba25
+++ b/tests/qemu-iotests/211
26ba25
@@ -27,7 +27,7 @@ iotests.verify_image_format(supported_fmts=['vdi'])
26ba25
 iotests.verify_protocol(supported=['file'])
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options)
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options)
26ba25
 
26ba25
     if 'return' in result:
26ba25
         assert result['return'] == {}
26ba25
diff --git a/tests/qemu-iotests/211.out b/tests/qemu-iotests/211.out
26ba25
index 2bf1c4a..6feaea3 100644
26ba25
--- a/tests/qemu-iotests/211.out
26ba25
+++ b/tests/qemu-iotests/211.out
26ba25
@@ -1,13 +1,13 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 {'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}
26ba25
 {u'return': {}}
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'imgfile', 'size': 134217728}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'imgfile', 'size': 134217728}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -21,12 +21,12 @@ cluster_size: 1048576
26ba25
 
26ba25
 === Successful image creation (explicit defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'off', 'driver': 'vdi', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}, 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'off', 'driver': 'vdi', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}, 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -40,12 +40,12 @@ cluster_size: 1048576
26ba25
 
26ba25
 === Successful image creation (with non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'metadata', 'driver': 'vdi', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}, 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'metadata', 'driver': 'vdi', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vdi'}, 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -60,7 +60,7 @@ cluster_size: 1048576
26ba25
 
26ba25
 === Invalid BlockdevRef ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -68,7 +68,7 @@ Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exi
26ba25
 
26ba25
 === Zero size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 0}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 0}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -80,7 +80,7 @@ cluster_size: 1048576
26ba25
 
26ba25
 === Maximum size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 562949819203584}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 562949819203584}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -92,19 +92,19 @@ cluster_size: 1048576
26ba25
 
26ba25
 === Invalid sizes ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Unsupported VDI image size (size is 0xfffffffffffffe00, max supported is 0x1fffff8000000)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Unsupported VDI image size (size is 0x8000000000000000, max supported is 0x1fffff8000000)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 562949819203585}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vdi', 'file': 'node0', 'size': 562949819203585}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Unsupported VDI image size (size is 0x1fffff8000001, max supported is 0x1fffff8000000)
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
diff --git a/tests/qemu-iotests/212 b/tests/qemu-iotests/212
26ba25
index 03cf41d..95c8810 100755
26ba25
--- a/tests/qemu-iotests/212
26ba25
+++ b/tests/qemu-iotests/212
26ba25
@@ -27,7 +27,7 @@ iotests.verify_image_format(supported_fmts=['parallels'])
26ba25
 iotests.verify_protocol(supported=['file'])
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options)
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options)
26ba25
 
26ba25
     if 'return' in result:
26ba25
         assert result['return'] == {}
26ba25
diff --git a/tests/qemu-iotests/212.out b/tests/qemu-iotests/212.out
26ba25
index 780bc30..9150da7 100644
26ba25
--- a/tests/qemu-iotests/212.out
26ba25
+++ b/tests/qemu-iotests/212.out
26ba25
@@ -1,13 +1,13 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 {'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}
26ba25
 {u'return': {}}
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'imgfile', 'size': 134217728}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'imgfile', 'size': 134217728}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -18,12 +18,12 @@ virtual size: 128M (134217728 bytes)
26ba25
 
26ba25
 === Successful image creation (explicit defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1048576, 'driver': 'parallels', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}, 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1048576, 'driver': 'parallels', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}, 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -34,12 +34,12 @@ virtual size: 64M (67108864 bytes)
26ba25
 
26ba25
 === Successful image creation (with non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 65536, 'driver': 'parallels', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}, 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 65536, 'driver': 'parallels', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.parallels'}, 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -50,7 +50,7 @@ virtual size: 32M (33554432 bytes)
26ba25
 
26ba25
 === Invalid BlockdevRef ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -58,7 +58,7 @@ Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exi
26ba25
 
26ba25
 === Zero size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 0}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 0}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -69,7 +69,7 @@ virtual size: 0 (0 bytes)
26ba25
 
26ba25
 === Maximum size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 4503599627369984}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 4503599627369984}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -80,31 +80,31 @@ virtual size: 4096T (4503599627369984 bytes)
26ba25
 
26ba25
 === Invalid sizes ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 1234}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 1234}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size must be a multiple of 512 bytes
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 4503599627370497}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'parallels', 'file': 'node0', 'size': 4503599627370497}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -112,43 +112,43 @@ Job failed: Image size is too large for this cluster size
26ba25
 
26ba25
 === Invalid cluster size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1234, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1234, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a multiple of 512 bytes
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 128, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 128, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size must be a multiple of 512 bytes
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 4294967296, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 4294967296, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 9223372036854775808L, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 9223372036854775808L, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 18446744073709551104L, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 18446744073709551104L, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cluster size is too large
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 0, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 0, 'driver': 'parallels', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'driver': 'parallels', 'file': 'node0', 'size': 281474976710656}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'driver': 'parallels', 'file': 'node0', 'size': 281474976710656}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size is too large for this cluster size
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
diff --git a/tests/qemu-iotests/213 b/tests/qemu-iotests/213
26ba25
index 29d25bc..4054439 100755
26ba25
--- a/tests/qemu-iotests/213
26ba25
+++ b/tests/qemu-iotests/213
26ba25
@@ -27,7 +27,7 @@ iotests.verify_image_format(supported_fmts=['vhdx'])
26ba25
 iotests.verify_protocol(supported=['file'])
26ba25
 
26ba25
 def blockdev_create(vm, options):
26ba25
-    result = vm.qmp_log('x-blockdev-create', job_id='job0', options=options)
26ba25
+    result = vm.qmp_log('blockdev-create', job_id='job0', options=options)
26ba25
 
26ba25
     if 'return' in result:
26ba25
         assert result['return'] == {}
26ba25
diff --git a/tests/qemu-iotests/213.out b/tests/qemu-iotests/213.out
26ba25
index f18a39a..e1dcd47 100644
26ba25
--- a/tests/qemu-iotests/213.out
26ba25
+++ b/tests/qemu-iotests/213.out
26ba25
@@ -1,13 +1,13 @@
26ba25
 === Successful image creation (defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
 {'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}
26ba25
 {u'return': {}}
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'imgfile', 'size': 134217728}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'imgfile', 'size': 134217728}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -19,12 +19,12 @@ cluster_size: 8388608
26ba25
 
26ba25
 === Successful image creation (explicit defaults) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'block-size': 8388608, 'driver': 'vhdx', 'subformat': 'dynamic', 'log-size': 1048576, 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}, 'block-state-zero': True, 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'block-size': 8388608, 'driver': 'vhdx', 'subformat': 'dynamic', 'log-size': 1048576, 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}, 'block-state-zero': True, 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -36,12 +36,12 @@ cluster_size: 8388608
26ba25
 
26ba25
 === Successful image creation (with non-default options) ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'block-size': 268435456, 'driver': 'vhdx', 'subformat': 'fixed', 'log-size': 8388608, 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}, 'block-state-zero': False, 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'block-size': 268435456, 'driver': 'vhdx', 'subformat': 'fixed', 'log-size': 8388608, 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.vhdx'}, 'block-state-zero': False, 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -53,7 +53,7 @@ cluster_size: 268435456
26ba25
 
26ba25
 === Invalid BlockdevRef ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': "this doesn't exist", 'size': 33554432}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -61,7 +61,7 @@ Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exi
26ba25
 
26ba25
 === Zero size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 0}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 0}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -73,7 +73,7 @@ cluster_size: 8388608
26ba25
 
26ba25
 === Maximum size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 70368744177664}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 70368744177664}}}
26ba25
 {u'return': {}}
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
@@ -85,25 +85,25 @@ cluster_size: 67108864
26ba25
 
26ba25
 === Invalid sizes ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 18446744073709551104L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size too large; max of 64TB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 9223372036854775808L}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size too large; max of 64TB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 9223372036854775296}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size too large; max of 64TB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 70368744177665}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'file': 'node0', 'size': 70368744177665}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Image size too large; max of 64TB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -111,31 +111,31 @@ Job failed: Image size too large; max of 64TB
26ba25
 
26ba25
 === Invalid block size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 1234567, 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 1234567, 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Block size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 128, 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 128, 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Block size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 3145728, 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 3145728, 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Block size must be a power of two
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 536870912, 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 536870912, 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Block size must not exceed 268435456
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 0, 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'vhdx', 'block-size': 0, 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Block size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
@@ -143,25 +143,25 @@ Job failed: Block size must be a multiple of 1 MB
26ba25
 
26ba25
 === Invalid log size ===
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 1234567, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 1234567, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Log size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 128, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 128, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Log size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 4294967296, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 4294967296, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Log size must be smaller than 4 GB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
 {u'return': {}}
26ba25
 
26ba25
-{'execute': 'x-blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 0, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
+{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'log-size': 0, 'driver': 'vhdx', 'file': 'node0', 'size': 67108864}}}
26ba25
 {u'return': {}}
26ba25
 Job failed: Log size must be a multiple of 1 MB
26ba25
 {'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
26ba25
-- 
26ba25
1.8.3.1
26ba25