In order to remove the necessity to use BlockBackend names in the external API,
we already converted all block layer QMP commands on the node level to accept
node names instead of BlockBackend names. This series converts the second part,
device level commands, to allow qdev device names instead of BlockBackend
names.

v2:
- qmp-commands.hx: Update examples to use qdev IDs [Eric]
- QAPI schema: Make sure to include #optional for both 'device' and 'id and
  to add deprecation warnings for 'device' everywhere [Eric]
- Fixed use of (undefined) device string without has_device in error messages

Kevin Wolf (10):
  block: Add blk_by_dev()
  qdev-monitor: Factor out find_device_state()
  qdev-monitor: Add blk_by_qdev_id()
  block: Accept device model name for blockdev-open/close-tray
  block: Accept device model name for x-blockdev-insert-medium
  block: Accept device model name for x-blockdev-remove-medium
  block: Accept device model name for eject
  block: Accept device model name for blockdev-change-medium
  block: Accept device model name for block_set_io_throttle
  qemu-iotests/118: Test media change with qdev name

 block/block-backend.c          |  19 ++++++
 blockdev.c                     | 152 +++++++++++++++++++++++++++--------------
 hmp.c                          |   7 +-
 include/sysemu/block-backend.h |   2 +
 qapi/block-core.json           |  44 ++++++++----
 qapi/block.json                |   9 ++-
 qdev-monitor.c                 |  34 +++++++--
 qmp-commands.hx                |  68 ++++++++++--------
 qmp.c                          |   4 +-
 tests/qemu-iotests/118         |  85 ++++++++++++++++++-----
 tests/qemu-iotests/iotests.py  |   5 ++
 11 files changed, 308 insertions(+), 121 deletions(-)

-- 
1.8.3.1


Reply via email to