[GIT PULL] virtio: fixes for rc1

From: Michael S. Tsirkin
Date: Sun Jul 28 2024 - 19:20:14 EST



The biggest thing here is the adminq change - but it looks like
the only way to avoid headq blocking causing indefinite stalls.


The following changes since commit 6c85d6b653caeba2ef982925703cbb4f2b3b3163:

virtio: rename virtio_find_vqs_info() to virtio_find_vqs() (2024-07-17 05:20:58 -0400)

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 6d834691da474ed1c648753d3d3a3ef8379fa1c1:

virtio_pci_modern: remove admin queue serialization lock (2024-07-17 05:43:21 -0400)

----------------------------------------------------------------
virtio: fixes

This fixes 3 issues:
- prevent admin commands on one VF blocking another:
fixes a huge scalability issue with large # of VFs
- correctly return error on command failure on octeon
fixes a corruption if any commands fail
- fix modpost warning when building virtio_dma_buf
harmless, but the fix is trivial

Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

----------------------------------------------------------------
Dan Carpenter (1):
vdpa/octeon_ep: Fix error code in octep_process_mbox()

Jeff Johnson (1):
virtio: add missing MODULE_DESCRIPTION() macro

Jiri Pirko (13):
virtio_pci: push out single vq find code to vp_find_one_vq_msix()
virtio_pci: simplify vp_request_msix_vectors() call a bit
virtio_pci: pass vector policy enum to vp_find_vqs_msix()
virtio_pci: pass vector policy enum to vp_find_one_vq_msix()
virtio_pci: introduce vector allocation fallback for slow path virtqueues
virtio_pci_modern: treat vp_dev->admin_vq.info.vq pointer as static
virtio: push out code to vp_avq_index()
virtio_pci: pass vq info as an argument to vp_setup_vq()
virtio: create admin queues alongside other virtqueues
virtio_pci_modern: create admin queue of queried size
virtio_pci_modern: pass cmd as an identification token
virtio_pci_modern: use completion instead of busy loop to wait on admin cmd result
virtio_pci_modern: remove admin queue serialization lock

drivers/vdpa/octeon_ep/octep_vdpa_hw.c | 2 +-
drivers/virtio/virtio.c | 28 +----
drivers/virtio/virtio_dma_buf.c | 1 +
drivers/virtio/virtio_pci_common.c | 192 ++++++++++++++++++++++++++-------
drivers/virtio/virtio_pci_common.h | 16 +--
drivers/virtio/virtio_pci_modern.c | 161 +++++++++++++--------------
include/linux/virtio.h | 3 +
include/linux/virtio_config.h | 4 -
8 files changed, 243 insertions(+), 164 deletions(-)