mbox series

[GIT,PULL,iommu] Please pull iommu errno changes

Message ID Y2Jn7Jskqzz95XB4@nvidia.com
State New
Headers show
Series [GIT,PULL,iommu] Please pull iommu errno changes | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd.git tags/for-joerg

Message

Jason Gunthorpe Nov. 2, 2022, 12:51 p.m. UTC
Hi Joerg,

Here is a PR for a shared branch with Nicolin's series. I will be
putting this in the iommufd tree right away and Alex will need it for
vfio as well to progress this cycle. Please grab it to the iommu tree,
thanks

Jason

The following changes since commit 30a0b95b1335e12efef89dd78518ed3e4a71a763:

  Linux 6.1-rc3 (2022-10-30 15:19:28 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd.git tags/for-joerg

for you to fetch changes up to 04cee82e04d2aff3d177ef0021ecdff228daf7b8:

  iommu: Propagate return value in ->attach_dev callback functions (2022-11-01 14:39:59 -0300)

----------------------------------------------------------------
iommu: Define EINVAL as device/domain incompatibility

This series is to replace the previous EMEDIUMTYPE patch in a VFIO series:
https://lore.kernel.org/kvm/Yxnt9uQTmbqul5lf@8bytes.org/

The purpose is to regulate all existing ->attach_dev callback functions to
use EINVAL exclusively for an incompatibility error between a device and a
domain. This allows VFIO and IOMMUFD to detect such a soft error, and then
try a different domain with the same device.

Among all the patches, the first two are preparatory changes. And then one
patch to update kdocs and another three patches for the enforcement
effort.

Link: https://lore.kernel.org/r/cover.1666042872.git.nicolinc@nvidia.com

----------------------------------------------------------------
Nicolin Chen (5):
      iommu/amd: Drop unnecessary checks in amd_iommu_attach_device()
      iommu: Add return value rules to attach_dev op and APIs
      iommu: Regulate EINVAL in ->attach_dev callback functions
      iommu: Use EINVAL for incompatible device/domain in ->attach_dev
      iommu: Propagate return value in ->attach_dev callback functions

 drivers/iommu/amd/iommu.c                   | 12 ++----------
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 11 +----------
 drivers/iommu/arm/arm-smmu/arm-smmu.c       |  3 ---
 drivers/iommu/arm/arm-smmu/qcom_iommu.c     |  7 +------
 drivers/iommu/fsl_pamu.c                    |  2 +-
 drivers/iommu/fsl_pamu_domain.c             |  4 ++--
 drivers/iommu/intel/iommu.c                 | 10 +++-------
 drivers/iommu/intel/pasid.c                 |  6 ++++--
 drivers/iommu/iommu.c                       | 24 ++++++++++++++++++++++++
 drivers/iommu/ipmmu-vmsa.c                  |  2 --
 drivers/iommu/mtk_iommu.c                   |  4 ++--
 drivers/iommu/omap-iommu.c                  |  6 +++---
 drivers/iommu/sprd-iommu.c                  |  4 +---
 drivers/iommu/tegra-gart.c                  |  2 +-
 drivers/iommu/virtio-iommu.c                |  7 +++----
 include/linux/iommu.h                       | 12 ++++++++++++
 16 files changed, 60 insertions(+), 56 deletions(-)