From: KONRAD Frederic <fred.kon...@greensocs.com> This is the next part of virtio-refactoring.
Basically it creates virtio-blk device which extends virtio-device. Then a virtio-blk can be connected on a virtio-bus. virtio-blk-pci, virtio-blk-s390x, virtio-blk-ccw are created too, they extend respectively virtio-pci, virtio-s390-device, virtio-ccw-device and have a virtio-blk. You can checkout my branch here: git://project.greensocs.com/qemu-virtio.git virtio-blk-v10 I made basic tests (with linux guests) on: * qemu-system-i386 * qemu-system-s390x Cornelia made virtio-ccw test, and Stefan tried dataplane. Changes v9 -> v10: * Fix the hot unplug issue spotted by Anthony. Changes v8 -> v9: * Fix the hot unplug issue spotted by Cornelia. Changes v7 -> v8: * Fix the allow_hotplug assertion spotted by Anthony. * Attached the make virtio device's structures public (v4). Changes v6 -> v7: * Fix the DEFINE_VIRTIO_BLK_PROPERTIES macro issue spotted by Peter. Thanks, Fred KONRAD Frederic (11): virtio: make virtio device's structures public. virtio-x-bus: fix allow_hotplug assertion. virtio-pci: fix hot unplug. virtio-blk: don't use pointer for configuration. virtio-blk: add the virtio-blk device. virtio-blk-pci: switch to new API. virtio-blk-s390: switch to the new API. virtio-blk-ccw switch to new API. virtio-blk: cleanup: init and exit functions. virtio-blk: cleanup: QOM cast virtio-blk: cleanup: remove qdev field. hw/s390x/s390-virtio-bus.c | 32 ++++++---- hw/s390x/s390-virtio-bus.h | 13 +++- hw/s390x/virtio-ccw.c | 35 ++++++----- hw/s390x/virtio-ccw.h | 14 ++++- hw/virtio-balloon.c | 15 ----- hw/virtio-balloon.h | 14 +++++ hw/virtio-blk.c | 151 +++++++++++++++++++++++++-------------------- hw/virtio-blk.h | 39 ++++++++++++ hw/virtio-net.c | 50 --------------- hw/virtio-net.h | 50 +++++++++++++++ hw/virtio-pci.c | 142 ++++++++++++++++++------------------------ hw/virtio-pci.h | 15 ++++- hw/virtio-rng.c | 19 ------ hw/virtio-rng.h | 19 ++++++ hw/virtio-scsi.c | 15 ----- hw/virtio-scsi.h | 16 +++++ hw/virtio-serial-bus.c | 41 ------------ hw/virtio-serial.h | 41 ++++++++++++ hw/virtio.h | 2 - 19 files changed, 401 insertions(+), 322 deletions(-) -- 1.7.11.7