block: Fix blockdev-backup not to use funky error class
Error classes are a leftover from the days of "rich" error objects. New code should always use ERROR_CLASS_GENERIC_ERROR. Commit b7b9d39..7c6a4ab added uses of ERROR_CLASS_DEVICE_NOT_FOUND. Replace them. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
965182549c
commit
5b347c5410
@ -1574,14 +1574,14 @@ static void blockdev_backup_prepare(BlkTransactionState *common, Error **errp)
|
||||
|
||||
blk = blk_by_name(backup->device);
|
||||
if (!blk) {
|
||||
error_set(errp, QERR_DEVICE_NOT_FOUND, backup->device);
|
||||
error_setg(errp, "Device '%s' not found", backup->device);
|
||||
return;
|
||||
}
|
||||
bs = blk_bs(blk);
|
||||
|
||||
blk = blk_by_name(backup->target);
|
||||
if (!blk) {
|
||||
error_set(errp, QERR_DEVICE_NOT_FOUND, backup->target);
|
||||
error_setg(errp, "Device '%s' not found", backup->target);
|
||||
return;
|
||||
}
|
||||
target = blk_bs(blk);
|
||||
@ -2421,7 +2421,7 @@ void qmp_blockdev_backup(const char *device, const char *target,
|
||||
|
||||
blk = blk_by_name(device);
|
||||
if (!blk) {
|
||||
error_set(errp, QERR_DEVICE_NOT_FOUND, device);
|
||||
error_setg(errp, "Device '%s' not found", device);
|
||||
return;
|
||||
}
|
||||
bs = blk_bs(blk);
|
||||
@ -2431,7 +2431,7 @@ void qmp_blockdev_backup(const char *device, const char *target,
|
||||
|
||||
blk = blk_by_name(target);
|
||||
if (!blk) {
|
||||
error_set(errp, QERR_DEVICE_NOT_FOUND, target);
|
||||
error_setg(errp, "Device '%s' not found", target);
|
||||
goto out;
|
||||
}
|
||||
target_bs = blk_bs(blk);
|
||||
|
@ -882,9 +882,6 @@
|
||||
#
|
||||
# For the arguments, see the documentation of BlockdevBackup.
|
||||
#
|
||||
# Returns: Nothing on success.
|
||||
# If @device or @target is not a valid block device, DeviceNotFound.
|
||||
#
|
||||
# Since 2.3
|
||||
##
|
||||
{ 'command': 'blockdev-backup', 'data': 'BlockdevBackup' }
|
||||
|
@ -126,7 +126,10 @@ class TestSingleDrive(iotests.QMPTestCase):
|
||||
|
||||
def do_test_device_not_found(self, cmd, **args):
|
||||
result = self.vm.qmp(cmd, **args)
|
||||
self.assert_qmp(result, 'error/class', 'DeviceNotFound')
|
||||
if cmd == 'drive-backup':
|
||||
self.assert_qmp(result, 'error/class', 'DeviceNotFound')
|
||||
else:
|
||||
self.assert_qmp(result, 'error/class', 'GenericError')
|
||||
|
||||
def test_device_not_found(self):
|
||||
self.do_test_device_not_found('drive-backup', device='nonexistent',
|
||||
@ -364,7 +367,7 @@ class TestSingleTransaction(iotests.QMPTestCase):
|
||||
'sync': 'full' },
|
||||
}
|
||||
])
|
||||
self.assert_qmp(result, 'error/class', 'DeviceNotFound')
|
||||
self.assert_qmp(result, 'error/class', 'GenericError')
|
||||
|
||||
result = self.vm.qmp('transaction', actions=[{
|
||||
'type': 'blockdev-backup',
|
||||
@ -373,7 +376,7 @@ class TestSingleTransaction(iotests.QMPTestCase):
|
||||
'sync': 'full' },
|
||||
}
|
||||
])
|
||||
self.assert_qmp(result, 'error/class', 'DeviceNotFound')
|
||||
self.assert_qmp(result, 'error/class', 'GenericError')
|
||||
|
||||
result = self.vm.qmp('transaction', actions=[{
|
||||
'type': 'blockdev-backup',
|
||||
@ -382,7 +385,7 @@ class TestSingleTransaction(iotests.QMPTestCase):
|
||||
'sync': 'full' },
|
||||
}
|
||||
])
|
||||
self.assert_qmp(result, 'error/class', 'DeviceNotFound')
|
||||
self.assert_qmp(result, 'error/class', 'GenericError')
|
||||
|
||||
def test_target_is_source(self):
|
||||
result = self.vm.qmp('transaction', actions=[{
|
||||
|
Loading…
x
Reference in New Issue
Block a user