Align the iov length to the logical block size [Impact] When the logical block size of the virtual block device is smaller than the block device it is backed by on the host, qemu encounters a situation where it needs to bounce unaligned buffers during the use of direct IO. In the past, the logical block size happened to align with the memory page offset, leading qemu to mistakenly use the memory offset as the block size. However, a kernel commit b1a000d3b8ec resolved this issue by separating memory alignment from the logical block size. As a result, qemu now has an incorrect understanding of the minimum vector size. [Fix] Upstream commit 25474d90aa50 fixed this issue. ========== Author: Keith Busch