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

From: "Michael S. Tsirkin" <[email-masked]>
Date: Wed, 3 Nov 2021 16:43:32 -0400

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 <[email-masked]>

----------------------------------------------------------------
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