The following changes since commit 825b96dbcee23d134b691fc75618b59c5f53da32:
Merge tag 'migration-20250310-pull-request' of https://gitlab.com/farosas/qemu into staging (2025-03-11 09:32:07 +0800) are available in the Git repository at: https://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to df957115c46845e2c0ccc29ac0a75eb9700a9a0d: scripts/qcow2-to-stdout.py: Add script to write qcow2 images to stdout (2025-03-13 17:57:23 +0100) ---------------------------------------------------------------- Block layer patches - virtio-scsi: add iothread-vq-mapping parameter - Improve writethrough performance - Fix missing zero init in bdrv_snapshot_goto() - Added scripts/qcow2-to-stdout.py - Code cleanup and iotests fixes ---------------------------------------------------------------- Alberto Garcia (1): scripts/qcow2-to-stdout.py: Add script to write qcow2 images to stdout Kevin Wolf (8): block: Remove unused blk_op_is_blocked() block: Zero block driver state before reopening file-posix: Support FUA writes block/io: Ignore FUA with cache.no-flush=on aio: Create AioPolledEvent aio-posix: Factor out adjust_polling_time() aio-posix: Separate AioPolledEvent per AioHandler aio-posix: Adjust polling time also for new handlers Stefan Hajnoczi (13): scsi-disk: drop unused SCSIDiskState->bh field dma: use current AioContext for dma_blk_io() scsi: track per-SCSIRequest AioContext scsi: introduce requests_lock virtio-scsi: introduce event and ctrl virtqueue locks virtio-scsi: protect events_dropped field virtio-scsi: perform TMFs in appropriate AioContexts virtio-blk: extract cleanup_iothread_vq_mapping() function virtio-blk: tidy up iothread_vq_mapping functions virtio: extract iothread-vq-mapping.h API virtio-scsi: add iothread-vq-mapping parameter virtio-scsi: handle ctrl virtqueue in main loop virtio-scsi: only expose cmd vqs via iothread-vq-mapping Thomas Huth (1): iotests: Limit qsd-migrate to working formats include/block/aio.h | 5 +- include/block/raw-aio.h | 19 +- include/hw/scsi/scsi.h | 8 +- include/hw/virtio/iothread-vq-mapping.h | 45 +++ include/hw/virtio/virtio-scsi.h | 15 +- include/system/block-backend-global-state.h | 1 - include/system/dma.h | 3 +- util/aio-posix.h | 1 + block/block-backend.c | 12 - block/file-posix.c | 29 +- block/io.c | 4 + block/io_uring.c | 25 +- block/linux-aio.c | 25 +- block/snapshot.c | 1 + hw/block/virtio-blk.c | 132 +------- hw/ide/core.c | 3 +- hw/ide/macio.c | 3 +- hw/scsi/scsi-bus.c | 121 +++++-- hw/scsi/scsi-disk.c | 24 +- hw/scsi/virtio-scsi-dataplane.c | 103 ++++-- hw/scsi/virtio-scsi.c | 502 ++++++++++++++++------------ hw/virtio/iothread-vq-mapping.c | 131 ++++++++ system/dma-helpers.c | 8 +- util/aio-posix.c | 114 ++++--- util/async.c | 1 - scripts/qcow2-to-stdout.py | 449 +++++++++++++++++++++++++ hw/virtio/meson.build | 1 + meson.build | 8 + tests/qemu-iotests/051.pc.out | 2 +- tests/qemu-iotests/tests/qsd-migrate | 2 +- 30 files changed, 1286 insertions(+), 511 deletions(-) create mode 100644 include/hw/virtio/iothread-vq-mapping.h create mode 100644 hw/virtio/iothread-vq-mapping.c create mode 100755 scripts/qcow2-to-stdout.py