v3: - Restore alphabetical order in getopt strings [Eric] v2: - Add comment explaining unbalanced error code path in qemu_io_alloc_from_file() [Eric] - List options alphabetically in help output [Eric] - Add Tested-by/Reviewed-by - CC qemu-stable on the fix
The first patch fixes a regression in QEMU 7.2 where detect-zeroes breaks with virtio-blk devices due to a BDRV_REQ_REGISTERED_BUF bug. Details of the regression can be found here: https://gitlab.com/qemu-project/qemu/-/issues/1404 The remaining patches add a regression test that will protect this code path in the future. The qemu-io command is extended with the new -r option that calls blk_register_buf(). This allows a qemu-iotests test case to trigger the same bug as virtio-blk. Stefan Hajnoczi (4): block: fix detect-zeroes= with BDRV_REQ_REGISTERED_BUF qemu-io: use BdrvRequestFlags instead of int qemu-io: add -r option to register I/O buffer iotests/detect-zeroes-registered-buf: add new test block/io.c | 3 + qemu-io-cmds.c | 180 ++++++++++++------ .../tests/detect-zeroes-registered-buf | 58 ++++++ .../tests/detect-zeroes-registered-buf.out | 7 + 4 files changed, 189 insertions(+), 59 deletions(-) create mode 100755 tests/qemu-iotests/tests/detect-zeroes-registered-buf create mode 100644 tests/qemu-iotests/tests/detect-zeroes-registered-buf.out -- 2.39.1