I'm working on cleanly separating block device host and guest parts. I'd like to route all this work through Kevin's block tree. This is still just preliminaries.
There will be at least one more round of cleanup & fixes before blockdev_add proper. I intend to start with a minimal QMP-only version, then add features. Markus Armbruster (12): scsi: scsi_bus_legacy_handle_cmdline() can fail, fix callers ide: Make it explicit that ide_create_drive() can't fail blockdev: Remove drive_get_serial() blockdev: New drive_of_blockdev() blockdev: Clean up automatic drive deletion qdev: Decouple qdev_prop_drive from DriveInfo blockdev: drive_get_by_id() is no longer used, remove block: Catch attempt to attach multiple devices to a blockdev savevm: Survive hot-unplug of snapshot device block: Fix virtual media change for if=none ide: Make PIIX and ISA IDE init functions return the qdev pc: Fix CMOS info for drives defined with -device block.c | 55 +++++++++++++++++++++++++++++ block.h | 5 +++ block_int.h | 8 ++-- blockdev.c | 45 +++++++++++++++--------- blockdev.h | 7 +++- hw/esp.c | 3 +- hw/fdc.c | 32 +++++++++------- hw/ide.h | 13 ++++--- hw/ide/core.c | 18 +++++---- hw/ide/internal.h | 2 +- hw/ide/isa.c | 8 ++-- hw/ide/piix.c | 6 ++- hw/ide/qdev.c | 22 ++++++++--- hw/lsi53c895a.c | 2 +- hw/pc.c | 94 +++++++++++++++++++++++++++++++------------------ hw/pc.h | 3 +- hw/pc_piix.c | 16 ++++++--- hw/pci-hotplug.c | 10 ++++- hw/qdev-properties.c | 46 +++++++++++++++++++++---- hw/qdev.h | 7 ++-- hw/s390-virtio.c | 2 +- hw/scsi-bus.c | 19 ++++++---- hw/scsi-disk.c | 21 ++++++----- hw/scsi-generic.c | 7 ++-- hw/scsi.h | 4 +- hw/usb-msd.c | 29 ++++++++++++--- hw/virtio-blk.c | 3 +- hw/virtio-pci.c | 4 +- savevm.c | 31 ++-------------- 29 files changed, 344 insertions(+), 178 deletions(-)