Subject: [GIT PULL] virtio,vhost,vdpa: features, fixes

From: "Michael S. Tsirkin" <[email-masked]>
Date: Fri, 13 Feb 2026 05:06:02 -0500

The following changes since commit d8ee3cfdc89b75dc059dc21c27bef2c1440f67eb:

  vhost/vsock: improve RCU read sections around vhost_vsock_get() (2025-12-24 08:02:57 -0500)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git tags/for_linus

for you to fetch changes up to ebcff9dacaf2c1418f8bc927388186d7d3674603:

  vduse: avoid adding implicit padding (2026-02-09 12:21:32 -0500)

----------------------------------------------------------------
virtio,vhost,vdpa: features, fixes

- in order support in virtio core
- multiple address space support in vduse
- fixes, cleanups all over the place, notably
  - dma alignment fixes for non cache coherent systems

Signed-off-by: Michael S. Tsirkin <[email-masked]>

----------------------------------------------------------------
Arnd Bergmann (1):
      vduse: avoid adding implicit padding

Bibo Mao (3):
      crypto: virtio: Add spinlock protection with virtqueue notification
      crypto: virtio: Remove duplicated virtqueue_kick in virtio_crypto_skcipher_crypt_req
      crypto: virtio: Replace package id with numa node id

Cindy Lu (3):
      vdpa/mlx5: update mlx_features with driver state check
      vdpa/mlx5: reuse common function for MAC address updates
      vdpa/mlx5: update MAC address handling in mlx5_vdpa_set_attr()

Eugenio Pérez (13):
      vhost: move vdpa group bound check to vhost_vdpa
      vduse: add v1 API definition
      vduse: add vq group support
      vduse: return internal vq group struct as map token
      vdpa: document set_group_asid thread safety
      vhost: forbid change vq groups ASID if DRIVER_OK is set
      vduse: refactor vdpa_dev_add for goto err handling
      vduse: remove unused vaddr parameter of vduse_domain_free_coherent
      vduse: take out allocations from vduse_dev_alloc_coherent
      vduse: merge tree search logic of IOTLB_GET_FD and IOTLB_GET_INFO ioctls
      vduse: add vq group asid support
      vduse: bump version number
      Documentation: Add documentation for VDUSE Address Space IDs

Jason Wang (19):
      virtio_ring: rename virtqueue_reinit_xxx to virtqueue_reset_xxx()
      virtio_ring: switch to use vring_virtqueue in virtqueue_poll variants
      virtio_ring: unify logic of virtqueue_poll() and more_used()
      virtio_ring: switch to use vring_virtqueue for virtqueue resize variants
      virtio_ring: switch to use vring_virtqueue for virtqueue_kick_prepare variants
      virtio_ring: switch to use vring_virtqueue for virtqueue_add variants
      virtio: switch to use vring_virtqueue for virtqueue_get variants
      virtio_ring: switch to use vring_virtqueue for enable_cb_prepare variants
      virtio_ring: use vring_virtqueue for enable_cb_delayed variants
      virtio_ring: switch to use vring_virtqueue for disable_cb variants
      virtio_ring: switch to use vring_virtqueue for detach_unused_buf variants
      virtio_ring: switch to use unsigned int for virtqueue_poll_packed()
      virtio_ring: introduce virtqueue ops
      virtio_ring: determine descriptor flags at one time
      virtio_ring: factor out core logic of buffer detaching
      virtio_ring: factor out core logic for updating last_used_idx
      virtio_ring: factor out split indirect detaching logic
      virtio_ring: factor out split detaching logic
      virtio_ring: add in order support

Jon Kohler (1):
      vhost: use "checked" versions of get_user() and put_user()

Kommula Shiva Shankar (1):
      vhost: fix caching attributes of MMIO regions by setting them explicitly

Michael S. Tsirkin (16):
      dma-mapping: add __dma_from_device_group_begin()/end()
      docs: dma-api: document __dma_from_device_group_begin()/end()
      dma-mapping: add DMA_ATTR_CPU_CACHE_CLEAN
      docs: dma-api: document DMA_ATTR_CPU_CACHE_CLEAN
      dma-debug: track cache clean flag in entries
      virtio: add virtqueue_add_inbuf_cache_clean API
      vsock/virtio: fix DMA alignment for event_list
      vsock/virtio: use virtqueue_add_inbuf_cache_clean for events
      virtio_input: fix DMA alignment for evts
      virtio_scsi: fix DMA cacheline issues for events
      virtio-rng: fix DMA alignment for data buffer
      virtio_input: use virtqueue_add_inbuf_cache_clean for events
      vsock/virtio: reorder fields to reduce padding
      gpio: virtio: fix DMA alignment
      gpio: virtio: reorder fields to reduce struct padding
      checkpatch: special-case cacheline group macros

Thomas Weißschuh (1):
      virtio: uapi: avoid usage of libc types

[email-masked] (1):
      virtio_ring: code cleanup in detach_buf_split

 Documentation/core-api/dma-api-howto.rst           |   52 +
 Documentation/core-api/dma-attributes.rst          |    9 +
 Documentation/userspace-api/vduse.rst              |   53 +
 drivers/char/hw_random/virtio-rng.c                |    3 +
 drivers/crypto/virtio/virtio_crypto_common.h       |    2 +-
 drivers/crypto/virtio/virtio_crypto_core.c         |    5 +
 .../crypto/virtio/virtio_crypto_skcipher_algs.c    |    2 -
 drivers/gpio/gpio-virtio.c                         |   15 +-
 drivers/scsi/virtio_scsi.c                         |   17 +-
 drivers/vdpa/mlx5/net/mlx5_vnet.c                  |  156 +--
 drivers/vdpa/vdpa_sim/vdpa_sim.c                   |    6 -
 drivers/vdpa/vdpa_user/iova_domain.c               |   27 +-
 drivers/vdpa/vdpa_user/iova_domain.h               |    8 +-
 drivers/vdpa/vdpa_user/vduse_dev.c                 |  524 +++++++---
 drivers/vhost/vdpa.c                               |    5 +-
 drivers/vhost/vhost.c                              |    8 +-
 drivers/virtio/virtio_input.c                      |    5 +-
 drivers/virtio/virtio_ring.c                       | 1010 +++++++++++++++-----
 include/linux/dma-mapping.h                        |   20 +
 include/linux/vdpa.h                               |    4 +-
 include/linux/virtio.h                             |   11 +-
 include/uapi/linux/vduse.h                         |   85 +-
 include/uapi/linux/virtio_ring.h                   |    5 +-
 kernel/dma/debug.c                                 |   28 +-
 net/vmw_vsock/virtio_transport.c                   |   19 +-
 scripts/checkpatch.pl                              |    4 +-
 26 files changed, 1567 insertions(+), 516 deletions(-)