This unifies the request structure used by dataplane and non-dataplane code, while dropping unnessary fields for bounce buffer and read flag.
v4: Address Stefan's comments as below, and add Paolo's rev-by lines to others. [01/09] virtio-blk: Move VirtIOBlockReq to header Include "block/block.h". [02/09] virtio-blk: Convert VirtIOBlockReq.elem to pointer Use g_slice_new0 for req as well. [06/09] virtio-blk: Use VirtIOBlockReq.in to drop VirtIOBlockReq.inhdr Check guest input, don't assert. [09/09] virtio-blk: Fix and clean up the in_sg and out_sg check Use error_report + exit. Fam Zheng (9): virtio-blk: Move VirtIOBlockReq to header virtio-blk: Convert VirtIOBlockReq.elem to pointer virtio-blk: Drop bounce buffer from dataplane code virtio-blk: Drop VirtIOBlockRequest.read virtio-blk: Replace VirtIOBlockRequest with VirtIOBlockReq virtio-blk: Use VirtIOBlockReq.in to drop VirtIOBlockReq.inhdr virtio-blk: Convert VirtIOBlockReq.out to structrue virtio-blk: Fill in VirtIOBlockReq.out in dataplane code virtio-blk: Fix and clean up the in_sg and out_sg check hw/block/dataplane/virtio-blk.c | 169 ++++++++++++++-------------------------- hw/block/virtio-blk.c | 117 +++++++++++++++------------- include/hw/virtio/virtio-blk.h | 11 +++ 3 files changed, 132 insertions(+), 165 deletions(-) -- 2.0.0