vhost-user-blk neglects for several properties to check whether the configured value is even compatible with the backend. This results sometimes in crashes because of buggy error handling code, and sometimes in devices that are presented differently to the guest than the backend would expect and that don't work properly therefore.
This series fixes some of these bugs. v2: - Fix error paths in realize() that didn't set errp - Added vhost_dev_cleanup() back in the error path (more faithful revert of 77542d43149) Kevin Wolf (6): vhost-user-blk: Make sure to set Error on realize failure vhost-user-blk: Don't reconnect during initialisation vhost-user-blk: Improve error reporting in realize vhost-user-blk: Get more feature flags from vhost device virtio: Fail if iommu_platform is requested, but unsupported vhost-user-blk: Check that num-queues is supported by backend include/hw/virtio/vhost.h | 2 + hw/block/vhost-user-blk.c | 85 ++++++++++++++------------------------- hw/virtio/vhost-user.c | 5 +++ hw/virtio/virtio-bus.c | 5 +++ 4 files changed, 42 insertions(+), 55 deletions(-) -- 2.30.2
