[Devel] [PATCH VZ10 0/5] vhost-blk: fix protocol handling and backend setup
Andrey Zhadchenko
andrey.zhadchenko at virtuozzo.com
Tue Aug 18 18:09:15 MSK 2026
This series fixes several vhost-blk bugs and harden some userspace
interactions.
First patch hardens VIRTIO_BLK_T_GET_ID. Leave the serial empty and
copy the null terminator, just as QEMU.
The second patch reports the correct used-ring length: the number of
bytes written to the guest, including status.
The third patch fixes flush. REQ_OP_FLUSH is not a valid bio op; use
REQ_OP_WRITE | REQ_PREFLUSH as blkdev_issue_flush() does.
The fourth patch fixes sector alignment checks. SECTOR_MASK is 7, not
a bitmask, so the code was checking 8-byte alignment. Use
(SECTOR_SIZE - 1).
The last patch reworks queue/backend setup. vhost_blk_setup() silently
ignored a changed vq->num once requests were allocated and
double-fetched user input. Request allocation is now tied to backend
existence, and drop_backend/flush/fput are consolidated.
Andrey Zhadchenko (5):
drivers/vhost/blk: harden get_id command
drivers/vhost/blk: report correct used-ring lengths
drivers/vhost/blk: fix flush support
drivers/vhost/blk: fix sector alignment calculation
drivers/vhost/blk: rework queue/backend setup
drivers/vhost/blk.c | 162 ++++++++++++++++++++------------------------
1 file changed, 74 insertions(+), 88 deletions(-)
--
2.43.5
More information about the Devel
mailing list