On Wed, Mar 12, 2025 at 12:06 AM Kevin Wolf <kw...@redhat.com> wrote: > > 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 a93c04f3cbe690877b3297a9df4767aa811fcd97: > > virtio-scsi: only expose cmd vqs via iothread-vq-mapping (2025-03-11 > 15:49:22 +0100) > > ---------------------------------------------------------------- > Block layer patches > > - virtio-scsi: add iothread-vq-mapping parameter > - Improve writethrough performance > - Fix missing zero init in bdrv_snapshot_goto() > - Code cleanup and iotests fixes
The following CI failures came up: 1. laio_has_fua() is missing on some host OSes: https://gitlab.com/qemu-project/qemu/-/jobs/9380928997#L3369 2. io_uring_prep_writev2() without #ifdef HAVE_IO_PREP_PWRITEV2: https://gitlab.com/qemu-project/qemu/-/jobs/9380928883#L2515 3. qemu-iotests 051: https://gitlab.com/qemu-project/qemu/-/jobs/9380928853#L4519 Please send a v2 pull request. Thanks! Stefan > > ---------------------------------------------------------------- > 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 | 8 +- > 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 | 26 +- > block/io.c | 4 + > block/io_uring.c | 13 +- > block/linux-aio.c | 24 +- > 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 - > hw/virtio/meson.build | 1 + > meson.build | 4 + > tests/qemu-iotests/tests/qsd-migrate | 2 +- > 28 files changed, 803 insertions(+), 512 deletions(-) > create mode 100644 include/hw/virtio/iothread-vq-mapping.h > create mode 100644 hw/virtio/iothread-vq-mapping.c > >