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

From: Michael S. Tsirkin
Date: Wed Nov 03 2021 - 16:43:49 EST


The following changes since commit 8bb7eca972ad531c9b149c0a51ab43a417385813:

Linux 5.15 (2021-10-31 13:53:10 -0700)

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 540061ac79f0302ae91e44e6cd216cbaa3af1757:

vdpa/mlx5: Forward only packets with allowed MAC address (2021-11-01 05:26:49 -0400)

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

Hardening work by Jason
vdpa driver for Alibaba ENI
Performance tweaks for virtio blk
virtio rng rework using an internal buffer
mac/mtu programming for mlx5 vdpa
Misc fixes, cleanups

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

----------------------------------------------------------------
Colin Ian King (1):
virtio_blk: Fix spelling mistake: "advertisted" -> "advertised"

Eli Cohen (5):
vdpa/mlx5: Remove mtu field from vdpa net device
vdpa/mlx5: Rename control VQ workqueue to vdpa wq
vdpa/mlx5: Propagate link status from device to vdpa driver
vdpa/mlx5: Support configuration of MAC
vdpa/mlx5: Forward only packets with allowed MAC address

Gustavo A. R. Silva (1):
ALSA: virtio: Replace zero-length array with flexible-array member

Jason Wang (10):
virtio-blk: validate num_queues during probe
virtio_console: validate max_nr_ports before trying to use it
virtio_config: introduce a new .enable_cbs method
virtio_pci: harden MSI-X interrupts
virtio-pci: harden INTX interrupts
virtio_ring: fix typos in vring_desc_extra
virtio_ring: validate used buffer length
virtio-net: don't let virtio core to validate used length
virtio-blk: don't let virtio core to validate used length
virtio-scsi: don't let virtio core to validate used buffer length

Laurent Vivier (4):
hwrng: virtio - add an internal buffer
hwrng: virtio - don't wait on cleanup
hwrng: virtio - don't waste entropy
hwrng: virtio - always add a pending request

Max Gurtovoy (2):
virtio-blk: avoid preallocating big SGL for data
virtio-blk: add num_request_queues module parameter

Michael S. Tsirkin (3):
virtio_net: clarify tailroom logic
virtio_blk: allow 0 as num_request_queues
virtio_blk: correct types for status handling

Pankaj Gupta (1):
virtio-pmem: add myself as virtio-pmem maintainer

Parav Pandit (6):
vdpa: Introduce and use vdpa device get, set config helpers
vdpa: Introduce query of device config layout
vdpa: Use kernel coding style for structure comments
vdpa: Enable user to set mac and mtu of vdpa device
vdpa_sim_net: Enable user to set mac address and mtu
vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit

Viresh Kumar (1):
i2c: virtio: Add support for zero-length requests

Wu Zongyong (8):
virtio-pci: introduce legacy device module
vdpa: fix typo
vp_vdpa: add vq irq offloading support
vdpa: add new callback get_vq_num_min in vdpa_config_ops
vdpa: min vq num of vdpa device cannot be greater than max vq num
virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min}
vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE
eni_vdpa: add vDPA driver for Alibaba ENI

Xuan Zhuo (2):
virtio_ring: make virtqueue_add_indirect_packed prettier
virtio_ring: check desc == NULL when using indirect with packed

Ye Guojin (1):
virtio-blk: fixup coccinelle warnings

MAINTAINERS | 7 +
drivers/block/Kconfig | 1 +
drivers/block/virtio_blk.c | 178 +++++++----
drivers/char/hw_random/virtio-rng.c | 84 +++--
drivers/char/virtio_console.c | 9 +
drivers/i2c/busses/i2c-virtio.c | 56 ++--
drivers/net/virtio_net.c | 4 +-
drivers/scsi/virtio_scsi.c | 1 +
drivers/vdpa/Kconfig | 8 +
drivers/vdpa/Makefile | 1 +
drivers/vdpa/alibaba/Makefile | 3 +
drivers/vdpa/alibaba/eni_vdpa.c | 553 +++++++++++++++++++++++++++++++++
drivers/vdpa/ifcvf/ifcvf_main.c | 3 +-
drivers/vdpa/mlx5/core/mlx5_vdpa.h | 2 +-
drivers/vdpa/mlx5/net/mlx5_vnet.c | 202 ++++++++++--
drivers/vdpa/vdpa.c | 261 +++++++++++++++-
drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 3 +-
drivers/vdpa/vdpa_sim/vdpa_sim_net.c | 38 ++-
drivers/vdpa/vdpa_user/vduse_dev.c | 3 +-
drivers/vdpa/virtio_pci/vp_vdpa.c | 12 +
drivers/vhost/vdpa.c | 3 +-
drivers/virtio/Kconfig | 10 +
drivers/virtio/Makefile | 1 +
drivers/virtio/virtio_pci_common.c | 58 +++-
drivers/virtio/virtio_pci_common.h | 16 +-
drivers/virtio/virtio_pci_legacy.c | 106 ++-----
drivers/virtio/virtio_pci_legacy_dev.c | 220 +++++++++++++
drivers/virtio/virtio_pci_modern.c | 6 +-
drivers/virtio/virtio_ring.c | 90 +++++-
drivers/virtio/virtio_vdpa.c | 19 +-
include/linux/vdpa.h | 53 ++--
include/linux/virtio.h | 2 +
include/linux/virtio_config.h | 6 +
include/linux/virtio_pci_legacy.h | 42 +++
include/uapi/linux/vdpa.h | 7 +
include/uapi/linux/virtio_i2c.h | 6 +
sound/virtio/virtio_pcm_msg.c | 5 +-
37 files changed, 1781 insertions(+), 298 deletions(-)
create mode 100644 drivers/vdpa/alibaba/Makefile
create mode 100644 drivers/vdpa/alibaba/eni_vdpa.c
create mode 100644 drivers/virtio/virtio_pci_legacy_dev.c
create mode 100644 include/linux/virtio_pci_legacy.h