Reference: https://bugzilla.redhat.com/show_bug.cgi?id=1367369#c8
It's possible to wedge QEMU if the guest tries to reset a virtio-pci device as QEMU is also using the drive for a blockjob. This patchset aims to allow us to safely pause/resume jobs attached to individual nodes in a manner similar to how bdrv_drain_all_begin/end do. John Snow (3): blockjob: add block_job_start_shim block-backend: add drained_begin / drained_end ops blockjob: add devops to blockjob backends block/block-backend.c | 24 ++++++++++++++++-- blockjob.c | 55 +++++++++++++++++++++++++++++++++--------- include/sysemu/block-backend.h | 8 ++++++ 3 files changed, 73 insertions(+), 14 deletions(-) -- 2.9.3