aio_context_release(aio_context);
}
-void qmp_x_blockdev_remove_medium(const char *id, Error **errp)
+void qmp_blockdev_remove_medium(const char *id, Error **errp)
{
blockdev_remove_medium(false, NULL, true, id, errp);
}
qmp_blockdev_insert_anon_medium(blk, bs, errp);
}
-void qmp_x_blockdev_insert_medium(const char *id, const char *node_name,
- Error **errp)
+void qmp_blockdev_insert_medium(const char *id, const char *node_name,
+ Error **errp)
{
blockdev_insert_medium(false, NULL, true, id, node_name, errp);
}
'*id': 'str' } }
##
-# @x-blockdev-remove-medium:
+# @blockdev-remove-medium:
#
# Removes a medium (a block driver state tree) from a block device. That block
# device's tray must currently be open (unless there is no attached guest
#
# If the tray is open and there is no medium inserted, this will be a no-op.
#
-# @id: The name or QOM path of the guest device (since: 2.8)
-#
-# Note: This command is still a work in progress and is considered experimental.
-# Stay away from it unless you want to help with its development.
+# @id: The name or QOM path of the guest device
#
-# Since: 2.5
+# Since: 2.12
#
# Example:
#
-# -> { "execute": "x-blockdev-remove-medium",
+# -> { "execute": "blockdev-remove-medium",
# "arguments": { "id": "ide0-1-0" } }
#
# <- { "error": { "class": "GenericError",
#
# <- { "return": {} }
#
-# -> { "execute": "x-blockdev-remove-medium",
+# -> { "execute": "blockdev-remove-medium",
# "arguments": { "id": "ide0-1-0" } }
#
# <- { "return": {} }
#
##
-{ 'command': 'x-blockdev-remove-medium',
+{ 'command': 'blockdev-remove-medium',
'data': { 'id': 'str' } }
##
-# @x-blockdev-insert-medium:
+# @blockdev-insert-medium:
#
# Inserts a medium (a block driver state tree) into a block device. That block
# device's tray must currently be open (unless there is no attached guest
# device) and there must be no medium inserted already.
#
-# @id: The name or QOM path of the guest device (since: 2.8)
+# @id: The name or QOM path of the guest device
#
# @node-name: name of a node in the block driver state graph
#
-# Note: This command is still a work in progress and is considered experimental.
-# Stay away from it unless you want to help with its development.
-#
-# Since: 2.5
+# Since: 2.12
#
# Example:
#
# "filename": "fedora.iso" } } }
# <- { "return": {} }
#
-# -> { "execute": "x-blockdev-insert-medium",
+# -> { "execute": "blockdev-insert-medium",
# "arguments": { "id": "ide0-1-0",
# "node-name": "node0" } }
#
# <- { "return": {} }
#
##
-{ 'command': 'x-blockdev-insert-medium',
+{ 'command': 'blockdev-insert-medium',
'data': { 'id': 'str',
'node-name': 'str'} }
#
# Changes the medium inserted into a block device by ejecting the current medium
# and loading a new image file which is inserted as the new medium (this command
-# combines blockdev-open-tray, x-blockdev-remove-medium,
-# x-blockdev-insert-medium and blockdev-close-tray).
+# combines blockdev-open-tray, blockdev-remove-medium, blockdev-insert-medium
+# and blockdev-close-tray).
#
# @device: Block device name (deprecated, use @id instead)
#
rsp = qmp_receive();
QDECREF(rsp);
- qmp_discard_response("{'execute': 'x-blockdev-remove-medium', "
+ qmp_discard_response("{'execute': 'blockdev-remove-medium', "
"'arguments': {'id': 'cd0'}}");
/* Test the tray without a medium */
"'driver': 'raw', "
"'file': { 'driver': 'file', "
"'filename': %s }}}", iso);
- qmp_discard_response("{'execute': 'x-blockdev-insert-medium',"
+ qmp_discard_response("{'execute': 'blockdev-insert-medium',"
"'arguments': { 'id': 'cd0', "
"'node-name': 'node0' }}");
# Now eject cd0 and insert cd1
result = self.vm.qmp("blockdev-open-tray", id='dev0')
self.assert_qmp(result, 'return', {})
- result = self.vm.qmp("x-blockdev-remove-medium", id='dev0')
+ result = self.vm.qmp("blockdev-remove-medium", id='dev0')
self.assert_qmp(result, 'return', {})
- result = self.vm.qmp("x-blockdev-insert-medium", id='dev0', node_name='cd1')
+ result = self.vm.qmp("blockdev-insert-medium", id='dev0', node_name='cd1')
self.assert_qmp(result, 'return', {})
# Check that the I/O limits are still the same
self.assert_qmp(result, 'return[0]/inserted/bps', 50)
# Eject cd1
- result = self.vm.qmp("x-blockdev-remove-medium", id='dev0')
+ result = self.vm.qmp("blockdev-remove-medium", id='dev0')
self.assert_qmp(result, 'return', {})
# Check that we can't set limits if the device has no medium
else:
self.assert_qmp(result, 'return[0]/inserted/image/filename', old_img)
- result = self.vm.qmp('x-blockdev-remove-medium',
+ result = self.vm.qmp('blockdev-remove-medium',
id=self.device_name)
self.assert_qmp(result, 'return', {})
self.assert_qmp(result, 'return[0]/tray_open', True)
self.assert_qmp_absent(result, 'return[0]/inserted')
- result = self.vm.qmp('x-blockdev-insert-medium',
+ result = self.vm.qmp('blockdev-insert-medium',
id=self.device_name, node_name='new')
self.assert_qmp(result, 'return', {})
if not self.has_real_tray:
return
- result = self.vm.qmp('x-blockdev-remove-medium', id=self.device_name)
+ result = self.vm.qmp('blockdev-remove-medium', id=self.device_name)
self.assert_qmp(result, 'error/class', 'GenericError')
def test_insert_on_closed(self):
'driver': 'file'})
self.assert_qmp(result, 'return', {})
- result = self.vm.qmp('x-blockdev-insert-medium', id=self.device_name,
+ result = self.vm.qmp('blockdev-insert-medium', id=self.device_name,
node_name='new')
self.assert_qmp(result, 'error/class', 'GenericError')
self.wait_for_open()
- result = self.vm.qmp('x-blockdev-insert-medium', id=self.device_name,
+ result = self.vm.qmp('blockdev-insert-medium', id=self.device_name,
node_name='new')
self.assert_qmp(result, 'error/class', 'GenericError')
self.wait_for_open()
- result = self.vm.qmp('x-blockdev-remove-medium', id=self.device_name)
+ result = self.vm.qmp('blockdev-remove-medium', id=self.device_name)
# Should be a no-op
self.assert_qmp(result, 'return', {})
self.assert_qmp(result, 'return[0]/inserted/ro', False)
self.assert_qmp(result, 'return[0]/inserted/image/filename', old_img)
- result = self.vm.qmp('x-blockdev-remove-medium', id=self.device_name)
+ result = self.vm.qmp('blockdev-remove-medium', id=self.device_name)
self.assert_qmp(result, 'return', {})
result = self.vm.qmp('query-block')
self.assert_qmp_absent(result, 'return[0]/inserted')
- result = self.vm.qmp('x-blockdev-insert-medium', id=self.device_name,
+ result = self.vm.qmp('blockdev-insert-medium', id=self.device_name,
node_name='new')
self.assert_qmp(result, 'return', {})
# For device-less BBs, calling blockdev-open-tray or blockdev-close-tray
# is not necessary
- result = self.vm.qmp('x-blockdev-remove-medium', id=self.device_name)
+ result = self.vm.qmp('blockdev-remove-medium', id=self.device_name)
self.assert_qmp(result, 'return', {})
result = self.vm.qmp('query-block')
'driver': 'file'})
self.assert_qmp(result, 'return', {})
- result = self.vm.qmp('x-blockdev-insert-medium', id=self.device_name,
+ result = self.vm.qmp('blockdev-insert-medium', id=self.device_name,
node_name='node0')
self.assert_qmp(result, 'return', {})
# Insert a BlockDriverState
def insertDrive(self, device, node):
self.checkBlockDriverState(node)
- result = self.vm.qmp('x-blockdev-insert-medium',
+ result = self.vm.qmp('blockdev-insert-medium',
id = device, node_name = node)
self.assert_qmp(result, 'return', {})
self.checkBlockDriverState(node)