Currently, dataplane threads are shut down during migration because vring.c is not able to track dirty memory. However, all the relevant parts of QEMU have been made thread-safe now, so we can drop vring.c completely. With these patches, virtio-dataplane is now simply "virtio with ioeventfd in a different AioContext".
Paolo Bonzini (8): block-migration: acquire AioContext as necessary vring: make vring_enable_notification return void virtio: add AioContext-specific function for host notifiers virtio: export vring_notify as virtio_should_notify virtio-blk: fix "disabled data plane" mode virtio-blk: do not use vring in dataplane virtio-scsi: do not use vring in dataplane vring: remove hw/block/dataplane/virtio-blk.c | 130 +----- hw/block/dataplane/virtio-blk.h | 1 + hw/block/virtio-blk.c | 51 +-- hw/scsi/virtio-scsi-dataplane.c | 196 ++------- hw/scsi/virtio-scsi.c | 52 +-- hw/virtio/Makefile.objs | 1 - hw/virtio/dataplane/Makefile.objs | 1 - hw/virtio/dataplane/vring.c | 549 -------------------------- hw/virtio/virtio.c | 20 +- include/hw/virtio/dataplane/vring-accessors.h | 75 ---- include/hw/virtio/dataplane/vring.h | 51 --- include/hw/virtio/virtio-blk.h | 4 +- include/hw/virtio/virtio-scsi.h | 21 +- include/hw/virtio/virtio.h | 3 + migration/block.c | 61 ++- trace-events | 3 - 16 files changed, 134 insertions(+), 1085 deletions(-) delete mode 100644 hw/virtio/dataplane/Makefile.objs delete mode 100644 hw/virtio/dataplane/vring.c delete mode 100644 include/hw/virtio/dataplane/vring-accessors.h delete mode 100644 include/hw/virtio/dataplane/vring.h -- 1.8.3.1