mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
block: Accept device model name for eject
In order to remove the need for BlockBackend names in the external API, we want to allow qdev device names in all device related commands. This converts eject to accept a qdev device name. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
00949babe9
commit
fbe2d8163e
5 changed files with 22 additions and 10 deletions
10
blockdev.c
10
blockdev.c
|
@ -2265,7 +2265,9 @@ exit:
|
|||
block_job_txn_unref(block_job_txn);
|
||||
}
|
||||
|
||||
void qmp_eject(const char *device, bool has_force, bool force, Error **errp)
|
||||
void qmp_eject(bool has_device, const char *device,
|
||||
bool has_id, const char *id,
|
||||
bool has_force, bool force, Error **errp)
|
||||
{
|
||||
Error *local_err = NULL;
|
||||
int rc;
|
||||
|
@ -2274,14 +2276,16 @@ void qmp_eject(const char *device, bool has_force, bool force, Error **errp)
|
|||
force = false;
|
||||
}
|
||||
|
||||
rc = do_open_tray(device, NULL, force, &local_err);
|
||||
rc = do_open_tray(has_device ? device : NULL,
|
||||
has_id ? id : NULL,
|
||||
force, &local_err);
|
||||
if (rc && rc != -ENOSYS) {
|
||||
error_propagate(errp, local_err);
|
||||
return;
|
||||
}
|
||||
error_free(local_err);
|
||||
|
||||
qmp_x_blockdev_remove_medium(true, device, false, NULL, errp);
|
||||
qmp_x_blockdev_remove_medium(has_device, device, has_id, id, errp);
|
||||
}
|
||||
|
||||
void qmp_block_passwd(bool has_device, const char *device,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue