mbox series

[GIT,PULL] virtio,vdpa,qemu_fw_cfg: features, cleanups, fixes

Message ID 20220114153515-mutt-send-email-mst@kernel.org (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] virtio,vdpa,qemu_fw_cfg: features, cleanups, fixes | expand

Pull-request

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

Message

Michael S. Tsirkin Jan. 14, 2022, 8:35 p.m. UTC
The following changes since commit c9e6606c7fe92b50a02ce51dda82586ebdf99b48:

  Linux 5.16-rc8 (2022-01-02 14:23:25 -0800)

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

  virtio: acknowledge all features before access (2022-01-14 14:58:41 -0500)

----------------------------------------------------------------
virtio,vdpa,qemu_fw_cfg: features, cleanups, fixes

IOMMU bypass support in virtio-iommu
partial support for < MAX_ORDER - 1 granularity for virtio-mem
driver_override for vdpa
sysfs ABI documentation for vdpa
multiqueue config support for mlx5 vdpa

Misc fixes, cleanups.

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

----------------------------------------------------------------
Christophe JAILLET (1):
      eni_vdpa: Simplify 'eni_vdpa_probe()'

Dapeng Mi (1):
      virtio: fix a typo in function "vp_modern_remove" comments.

David Hildenbrand (2):
      virtio-mem: prepare page onlining code for granularity smaller than MAX_ORDER - 1
      virtio-mem: prepare fake page onlining code for granularity smaller than MAX_ORDER - 1

Eli Cohen (20):
      net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU
      vdpa/mlx5: Fix wrong configuration of virtio_version_1_0
      vdpa: Provide interface to read driver features
      vdpa/mlx5: Distribute RX virtqueues in RQT object
      vdpa: Sync calls set/get config/status with cf_mutex
      vdpa: Read device configuration only if FEATURES_OK
      vdpa: Allow to configure max data virtqueues
      vdpa/mlx5: Fix config_attr_mask assignment
      vdpa/mlx5: Support configuring max data virtqueue
      vdpa: Add support for returning device configuration information
      vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps()
      vdpa: Support reporting max device capabilities
      vdpa/mlx5: Report max device capabilities
      vdpa/vdpa_sim: Configure max supported virtqueues
      vdpa: Use BIT_ULL for bit operations
      vdpa/vdpa_sim_net: Report max device capabilities
      vdpa: Avoid taking cf_mutex lock on get status
      vdpa: Protect vdpa reset with cf_mutex
      vdpa/mlx5: Fix is_index_valid() to refer to features
      vdpa/mlx5: Fix tracking of current number of VQs

Eugenio Pérez (2):
      vdpa: Avoid duplicate call to vp_vdpa get_status
      vdpa: Mark vdpa_config_ops.get_vq_notification as optional

Guanjun (1):
      vduse: moving kvfree into caller

Jean-Philippe Brucker (5):
      iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
      iommu/virtio: Support bypass domains
      iommu/virtio: Sort reserved regions
      iommu/virtio: Pass end address to viommu_add_mapping()
      iommu/virtio: Support identity-mapped domains

Johan Hovold (4):
      firmware: qemu_fw_cfg: fix NULL-pointer deref on duplicate entries
      firmware: qemu_fw_cfg: fix kobject leak in probe error path
      firmware: qemu_fw_cfg: fix sysfs information leak
      firmware: qemu_fw_cfg: remove sysfs entries explicitly

Laura Abbott (1):
      vdpa: clean up get_config_size ret value handling

Michael S. Tsirkin (5):
      virtio: wrap config->reset calls
      hwrng: virtio - unregister device before reset
      virtio_ring: mark ring unused on error
      virtio: unexport virtio_finalize_features
      virtio: acknowledge all features before access

Peng Hao (2):
      virtio/virtio_mem: handle a possible NULL as a memcpy parameter
      virtio/virtio_pci_legacy_dev: ensure the correct return value

Stefano Garzarella (2):
      docs: document sysfs ABI for vDPA bus
      vdpa: add driver_override support

Xianting Tian (1):
      vhost/test: fix memory leak of vhost virtqueues

Zhu Lingshan (1):
      ifcvf/vDPA: fix misuse virtio-net device config size for blk dev

王贇 (1):
      virtio-pci: fix the confusing error message

 Documentation/ABI/testing/sysfs-bus-vdpa   |  57 ++++++++++
 MAINTAINERS                                |   1 +
 arch/um/drivers/virt-pci.c                 |   2 +-
 drivers/block/virtio_blk.c                 |   4 +-
 drivers/bluetooth/virtio_bt.c              |   2 +-
 drivers/char/hw_random/virtio-rng.c        |   2 +-
 drivers/char/virtio_console.c              |   4 +-
 drivers/crypto/virtio/virtio_crypto_core.c |   8 +-
 drivers/firmware/arm_scmi/virtio.c         |   2 +-
 drivers/firmware/qemu_fw_cfg.c             |  21 ++--
 drivers/gpio/gpio-virtio.c                 |   2 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c       |   2 +-
 drivers/i2c/busses/i2c-virtio.c            |   2 +-
 drivers/iommu/virtio-iommu.c               | 115 ++++++++++++++++----
 drivers/net/caif/caif_virtio.c             |   2 +-
 drivers/net/virtio_net.c                   |   4 +-
 drivers/net/wireless/mac80211_hwsim.c      |   2 +-
 drivers/nvdimm/virtio_pmem.c               |   2 +-
 drivers/rpmsg/virtio_rpmsg_bus.c           |   2 +-
 drivers/scsi/virtio_scsi.c                 |   2 +-
 drivers/vdpa/alibaba/eni_vdpa.c            |  28 +++--
 drivers/vdpa/ifcvf/ifcvf_base.c            |  41 ++++++--
 drivers/vdpa/ifcvf/ifcvf_base.h            |   9 +-
 drivers/vdpa/ifcvf/ifcvf_main.c            |  40 +++----
 drivers/vdpa/mlx5/net/mlx5_vnet.c          | 156 ++++++++++++++++-----------
 drivers/vdpa/vdpa.c                        | 163 +++++++++++++++++++++++++----
 drivers/vdpa/vdpa_sim/vdpa_sim.c           |  21 ++--
 drivers/vdpa/vdpa_sim/vdpa_sim_net.c       |   2 +
 drivers/vdpa/vdpa_user/vduse_dev.c         |  19 +++-
 drivers/vdpa/virtio_pci/vp_vdpa.c          |  16 ++-
 drivers/vhost/test.c                       |   1 +
 drivers/vhost/vdpa.c                       |  12 +--
 drivers/virtio/virtio.c                    |  40 ++++---
 drivers/virtio/virtio_balloon.c            |   2 +-
 drivers/virtio/virtio_input.c              |   2 +-
 drivers/virtio/virtio_mem.c                | 114 +++++++++++++-------
 drivers/virtio/virtio_pci_legacy.c         |   2 +-
 drivers/virtio/virtio_pci_legacy_dev.c     |   4 +-
 drivers/virtio/virtio_pci_modern_dev.c     |   2 +-
 drivers/virtio/virtio_ring.c               |   4 +-
 drivers/virtio/virtio_vdpa.c               |   7 +-
 fs/fuse/virtio_fs.c                        |   4 +-
 include/linux/vdpa.h                       |  39 +++++--
 include/linux/virtio.h                     |   2 +-
 include/uapi/linux/vdpa.h                  |   6 ++
 include/uapi/linux/virtio_iommu.h          |   8 +-
 net/9p/trans_virtio.c                      |   2 +-
 net/vmw_vsock/virtio_transport.c           |   4 +-
 sound/virtio/virtio_card.c                 |   4 +-
 49 files changed, 706 insertions(+), 286 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-vdpa

Comments

Jean-Philippe Brucker Jan. 14, 2022, 8:56 p.m. UTC | #1
Hi,

On Fri, Jan 14, 2022 at 03:35:15PM -0500, Michael S. Tsirkin wrote:
> Jean-Philippe Brucker (5):
>       iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
>       iommu/virtio: Support bypass domains
>       iommu/virtio: Sort reserved regions
>       iommu/virtio: Pass end address to viommu_add_mapping()
>       iommu/virtio: Support identity-mapped domains

Please could you drop these patches, they are from an old version of the
series. The newer version was already in Joerg's pull request and was
merged, so this will conflict.

Thanks,
Jean
Michael S. Tsirkin Jan. 14, 2022, 11:49 p.m. UTC | #2
On Fri, Jan 14, 2022 at 03:35:15PM -0500, Michael S. Tsirkin wrote:
> The following changes since commit c9e6606c7fe92b50a02ce51dda82586ebdf99b48:
> 
>   Linux 5.16-rc8 (2022-01-02 14:23:25 -0800)
> 
> 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 f04ac267029c8063fc35116b385cd37656b3c81a:
> 
>   virtio: acknowledge all features before access (2022-01-14 14:58:41 -0500)
> 
> ----------------------------------------------------------------
> virtio,vdpa,qemu_fw_cfg: features, cleanups, fixes
> 
> IOMMU bypass support in virtio-iommu
> partial support for < MAX_ORDER - 1 granularity for virtio-mem
> driver_override for vdpa
> sysfs ABI documentation for vdpa
> multiqueue config support for mlx5 vdpa
> 
> Misc fixes, cleanups.
> 
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

self-NACK at author's request.

Will send v2. Sorry.

> ----------------------------------------------------------------
> Christophe JAILLET (1):
>       eni_vdpa: Simplify 'eni_vdpa_probe()'
> 
> Dapeng Mi (1):
>       virtio: fix a typo in function "vp_modern_remove" comments.
> 
> David Hildenbrand (2):
>       virtio-mem: prepare page onlining code for granularity smaller than MAX_ORDER - 1
>       virtio-mem: prepare fake page onlining code for granularity smaller than MAX_ORDER - 1
> 
> Eli Cohen (20):
>       net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU
>       vdpa/mlx5: Fix wrong configuration of virtio_version_1_0
>       vdpa: Provide interface to read driver features
>       vdpa/mlx5: Distribute RX virtqueues in RQT object
>       vdpa: Sync calls set/get config/status with cf_mutex
>       vdpa: Read device configuration only if FEATURES_OK
>       vdpa: Allow to configure max data virtqueues
>       vdpa/mlx5: Fix config_attr_mask assignment
>       vdpa/mlx5: Support configuring max data virtqueue
>       vdpa: Add support for returning device configuration information
>       vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps()
>       vdpa: Support reporting max device capabilities
>       vdpa/mlx5: Report max device capabilities
>       vdpa/vdpa_sim: Configure max supported virtqueues
>       vdpa: Use BIT_ULL for bit operations
>       vdpa/vdpa_sim_net: Report max device capabilities
>       vdpa: Avoid taking cf_mutex lock on get status
>       vdpa: Protect vdpa reset with cf_mutex
>       vdpa/mlx5: Fix is_index_valid() to refer to features
>       vdpa/mlx5: Fix tracking of current number of VQs
> 
> Eugenio Pérez (2):
>       vdpa: Avoid duplicate call to vp_vdpa get_status
>       vdpa: Mark vdpa_config_ops.get_vq_notification as optional
> 
> Guanjun (1):
>       vduse: moving kvfree into caller
> 
> Jean-Philippe Brucker (5):
>       iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
>       iommu/virtio: Support bypass domains
>       iommu/virtio: Sort reserved regions
>       iommu/virtio: Pass end address to viommu_add_mapping()
>       iommu/virtio: Support identity-mapped domains
> 
> Johan Hovold (4):
>       firmware: qemu_fw_cfg: fix NULL-pointer deref on duplicate entries
>       firmware: qemu_fw_cfg: fix kobject leak in probe error path
>       firmware: qemu_fw_cfg: fix sysfs information leak
>       firmware: qemu_fw_cfg: remove sysfs entries explicitly
> 
> Laura Abbott (1):
>       vdpa: clean up get_config_size ret value handling
> 
> Michael S. Tsirkin (5):
>       virtio: wrap config->reset calls
>       hwrng: virtio - unregister device before reset
>       virtio_ring: mark ring unused on error
>       virtio: unexport virtio_finalize_features
>       virtio: acknowledge all features before access
> 
> Peng Hao (2):
>       virtio/virtio_mem: handle a possible NULL as a memcpy parameter
>       virtio/virtio_pci_legacy_dev: ensure the correct return value
> 
> Stefano Garzarella (2):
>       docs: document sysfs ABI for vDPA bus
>       vdpa: add driver_override support
> 
> Xianting Tian (1):
>       vhost/test: fix memory leak of vhost virtqueues
> 
> Zhu Lingshan (1):
>       ifcvf/vDPA: fix misuse virtio-net device config size for blk dev
> 
> 王贇 (1):
>       virtio-pci: fix the confusing error message
> 
>  Documentation/ABI/testing/sysfs-bus-vdpa   |  57 ++++++++++
>  MAINTAINERS                                |   1 +
>  arch/um/drivers/virt-pci.c                 |   2 +-
>  drivers/block/virtio_blk.c                 |   4 +-
>  drivers/bluetooth/virtio_bt.c              |   2 +-
>  drivers/char/hw_random/virtio-rng.c        |   2 +-
>  drivers/char/virtio_console.c              |   4 +-
>  drivers/crypto/virtio/virtio_crypto_core.c |   8 +-
>  drivers/firmware/arm_scmi/virtio.c         |   2 +-
>  drivers/firmware/qemu_fw_cfg.c             |  21 ++--
>  drivers/gpio/gpio-virtio.c                 |   2 +-
>  drivers/gpu/drm/virtio/virtgpu_kms.c       |   2 +-
>  drivers/i2c/busses/i2c-virtio.c            |   2 +-
>  drivers/iommu/virtio-iommu.c               | 115 ++++++++++++++++----
>  drivers/net/caif/caif_virtio.c             |   2 +-
>  drivers/net/virtio_net.c                   |   4 +-
>  drivers/net/wireless/mac80211_hwsim.c      |   2 +-
>  drivers/nvdimm/virtio_pmem.c               |   2 +-
>  drivers/rpmsg/virtio_rpmsg_bus.c           |   2 +-
>  drivers/scsi/virtio_scsi.c                 |   2 +-
>  drivers/vdpa/alibaba/eni_vdpa.c            |  28 +++--
>  drivers/vdpa/ifcvf/ifcvf_base.c            |  41 ++++++--
>  drivers/vdpa/ifcvf/ifcvf_base.h            |   9 +-
>  drivers/vdpa/ifcvf/ifcvf_main.c            |  40 +++----
>  drivers/vdpa/mlx5/net/mlx5_vnet.c          | 156 ++++++++++++++++-----------
>  drivers/vdpa/vdpa.c                        | 163 +++++++++++++++++++++++++----
>  drivers/vdpa/vdpa_sim/vdpa_sim.c           |  21 ++--
>  drivers/vdpa/vdpa_sim/vdpa_sim_net.c       |   2 +
>  drivers/vdpa/vdpa_user/vduse_dev.c         |  19 +++-
>  drivers/vdpa/virtio_pci/vp_vdpa.c          |  16 ++-
>  drivers/vhost/test.c                       |   1 +
>  drivers/vhost/vdpa.c                       |  12 +--
>  drivers/virtio/virtio.c                    |  40 ++++---
>  drivers/virtio/virtio_balloon.c            |   2 +-
>  drivers/virtio/virtio_input.c              |   2 +-
>  drivers/virtio/virtio_mem.c                | 114 +++++++++++++-------
>  drivers/virtio/virtio_pci_legacy.c         |   2 +-
>  drivers/virtio/virtio_pci_legacy_dev.c     |   4 +-
>  drivers/virtio/virtio_pci_modern_dev.c     |   2 +-
>  drivers/virtio/virtio_ring.c               |   4 +-
>  drivers/virtio/virtio_vdpa.c               |   7 +-
>  fs/fuse/virtio_fs.c                        |   4 +-
>  include/linux/vdpa.h                       |  39 +++++--
>  include/linux/virtio.h                     |   2 +-
>  include/uapi/linux/vdpa.h                  |   6 ++
>  include/uapi/linux/virtio_iommu.h          |   8 +-
>  net/9p/trans_virtio.c                      |   2 +-
>  net/vmw_vsock/virtio_transport.c           |   4 +-
>  sound/virtio/virtio_card.c                 |   4 +-
>  49 files changed, 706 insertions(+), 286 deletions(-)
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-vdpa
Michael S. Tsirkin Jan. 14, 2022, 11:50 p.m. UTC | #3
On Fri, Jan 14, 2022 at 08:56:14PM +0000, Jean-Philippe Brucker wrote:
> Hi,
> 
> On Fri, Jan 14, 2022 at 03:35:15PM -0500, Michael S. Tsirkin wrote:
> > Jean-Philippe Brucker (5):
> >       iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
> >       iommu/virtio: Support bypass domains
> >       iommu/virtio: Sort reserved regions
> >       iommu/virtio: Pass end address to viommu_add_mapping()
> >       iommu/virtio: Support identity-mapped domains
> 
> Please could you drop these patches, they are from an old version of the
> series. The newer version was already in Joerg's pull request and was
> merged, so this will conflict.
> 
> Thanks,
> Jean

It's weird that this wasn't detected, these have been in linux-next
for a long time now. I'l drop, though it's unfortunate as
hashes will not match with what was tested in linux-next.
Michael S. Tsirkin Jan. 14, 2022, 11:58 p.m. UTC | #4
On Fri, Jan 14, 2022 at 08:56:14PM +0000, Jean-Philippe Brucker wrote:
> Hi,
> 
> On Fri, Jan 14, 2022 at 03:35:15PM -0500, Michael S. Tsirkin wrote:
> > Jean-Philippe Brucker (5):
> >       iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
> >       iommu/virtio: Support bypass domains
> >       iommu/virtio: Sort reserved regions
> >       iommu/virtio: Pass end address to viommu_add_mapping()
> >       iommu/virtio: Support identity-mapped domains
> 
> Please could you drop these patches, they are from an old version of the
> series. The newer version was already in Joerg's pull request and was
> merged, so this will conflict.
> 
> Thanks,
> Jean

I just sent v2 without your changes, thanks.
Michael S. Tsirkin Jan. 17, 2022, 10:31 p.m. UTC | #5
On Fri, Jan 14, 2022 at 03:35:15PM -0500, Michael S. Tsirkin wrote:
> Jean-Philippe Brucker (5):
>       iommu/virtio: Add definitions for VIRTIO_IOMMU_F_BYPASS_CONFIG
>       iommu/virtio: Support bypass domains
>       iommu/virtio: Sort reserved regions
>       iommu/virtio: Pass end address to viommu_add_mapping()
>       iommu/virtio: Support identity-mapped domains

Linus, just making sure we are on the same page: Jean-Philippe
asked me to drop these patches since another version has been
accepted into another tree. So I did and sent v2 of the pull.
Hope that's clear and sorry about the noise.