blockdev: clarify error on attempt to open locked tray

When opening a device with a locked tray, gives an error explaining the
device tray is locked and that the user should wait and try again. This
is less confusing than the previous error, which simply stated that the
tray was locked.

Signed-off-by: Colin Lord <clord@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
Colin Lord 2016-06-08 13:56:28 -04:00 committed by Kevin Wolf
parent d46a0bb24d
commit 38a53d506b

View File

@ -2544,6 +2544,7 @@ void qmp_blockdev_change_medium(const char *device, const char *filename,
BlockBackend *blk; BlockBackend *blk;
BlockDriverState *medium_bs = NULL; BlockDriverState *medium_bs = NULL;
int bdrv_flags; int bdrv_flags;
int rc;
QDict *options = NULL; QDict *options = NULL;
Error *err = NULL; Error *err = NULL;
@ -2598,11 +2599,13 @@ void qmp_blockdev_change_medium(const char *device, const char *filename,
goto fail; goto fail;
} }
qmp_blockdev_open_tray(device, false, false, &err); rc = do_open_tray(device, false, &err);
if (err) { if (rc && rc != -ENOSYS) {
error_propagate(errp, err); error_propagate(errp, err);
goto fail; goto fail;
} }
error_free(err);
err = NULL;
qmp_x_blockdev_remove_medium(device, &err); qmp_x_blockdev_remove_medium(device, &err);
if (err) { if (err) {