[RESEND PATCH v14 00/13] iommu: SVA and IOPF refactoring

Lu Baolu posted 13 patches 3 years, 5 months ago
include/linux/intel-svm.h                     |  13 -
include/linux/iommu.h                         | 116 ++++++--
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h   |  23 +-
drivers/iommu/intel/iommu.h                   |  18 +-
.../iommu/{iommu-sva-lib.h => iommu-sva.h}    |  14 +-
drivers/dma/idxd/cdev.c                       |   3 +-
drivers/dma/idxd/init.c                       |  25 +-
.../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c   | 104 ++++---
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c   |  21 +-
drivers/iommu/intel/dmar.c                    |   7 +
drivers/iommu/intel/iommu.c                   |  30 +-
drivers/iommu/intel/svm.c                     | 145 ++++-----
drivers/iommu/io-pgfault.c                    |  77 ++---
drivers/iommu/iommu-sva-lib.c                 |  71 -----
drivers/iommu/iommu-sva.c                     | 240 +++++++++++++++
drivers/iommu/iommu.c                         | 277 ++++++++++++------
drivers/misc/uacce/uacce.c                    |   2 +-
drivers/pci/ats.c                             |   3 +
drivers/iommu/Makefile                        |   2 +-
19 files changed, 732 insertions(+), 459 deletions(-)
rename drivers/iommu/{iommu-sva-lib.h => iommu-sva.h} (83%)
delete mode 100644 drivers/iommu/iommu-sva-lib.c
create mode 100644 drivers/iommu/iommu-sva.c
[RESEND PATCH v14 00/13] iommu: SVA and IOPF refactoring
Posted by Lu Baolu 3 years, 5 months ago
Hi Joerg,

This is a resent version of v14 which was posted here:
https://lore.kernel.org/linux-iommu/20220924001204.4005613-1-baolu.lu@linux.intel.com/

No further comments since the last post. So I rebased it on the top of
v6.1-rc3 so that you can easily take it for v6.2 if you have interest.

It's purely a rebased version, no functional change. Please refer to
the original post for series description and change history.

This series is also available on github:

https://github.com/LuBaolu/intel-iommu/commits/iommu-sva-refactoring-v14-resend

Please consider it for your iommu tree.

Best regards,
baolu

Lu Baolu (13):
  iommu: Add max_pasids field in struct iommu_device
  iommu: Add max_pasids field in struct dev_iommu
  iommu: Remove SVM_FLAG_SUPERVISOR_MODE support
  PCI: Enable PASID only when ACS RR & UF enabled on upstream path
  iommu: Add attach/detach_dev_pasid iommu interfaces
  iommu: Add IOMMU SVA domain support
  iommu/vt-d: Add SVA domain support
  arm-smmu-v3/sva: Add SVA domain support
  iommu/sva: Refactoring iommu_sva_bind/unbind_device()
  iommu: Remove SVA related callbacks from iommu ops
  iommu: Prepare IOMMU domain for IOPF
  iommu: Per-domain I/O page fault handling
  iommu: Rename iommu-sva-lib.{c,h}

 include/linux/intel-svm.h                     |  13 -
 include/linux/iommu.h                         | 116 ++++++--
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h   |  23 +-
 drivers/iommu/intel/iommu.h                   |  18 +-
 .../iommu/{iommu-sva-lib.h => iommu-sva.h}    |  14 +-
 drivers/dma/idxd/cdev.c                       |   3 +-
 drivers/dma/idxd/init.c                       |  25 +-
 .../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c   | 104 ++++---
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c   |  21 +-
 drivers/iommu/intel/dmar.c                    |   7 +
 drivers/iommu/intel/iommu.c                   |  30 +-
 drivers/iommu/intel/svm.c                     | 145 ++++-----
 drivers/iommu/io-pgfault.c                    |  77 ++---
 drivers/iommu/iommu-sva-lib.c                 |  71 -----
 drivers/iommu/iommu-sva.c                     | 240 +++++++++++++++
 drivers/iommu/iommu.c                         | 277 ++++++++++++------
 drivers/misc/uacce/uacce.c                    |   2 +-
 drivers/pci/ats.c                             |   3 +
 drivers/iommu/Makefile                        |   2 +-
 19 files changed, 732 insertions(+), 459 deletions(-)
 rename drivers/iommu/{iommu-sva-lib.h => iommu-sva.h} (83%)
 delete mode 100644 drivers/iommu/iommu-sva-lib.c
 create mode 100644 drivers/iommu/iommu-sva.c

-- 
2.34.1
Re: [RESEND PATCH v14 00/13] iommu: SVA and IOPF refactoring
Posted by Joerg Roedel 3 years, 4 months ago
On Mon, Oct 31, 2022 at 08:59:04AM +0800, Lu Baolu wrote:
> Lu Baolu (13):
>   iommu: Add max_pasids field in struct iommu_device
>   iommu: Add max_pasids field in struct dev_iommu
>   iommu: Remove SVM_FLAG_SUPERVISOR_MODE support
>   PCI: Enable PASID only when ACS RR & UF enabled on upstream path
>   iommu: Add attach/detach_dev_pasid iommu interfaces
>   iommu: Add IOMMU SVA domain support
>   iommu/vt-d: Add SVA domain support
>   arm-smmu-v3/sva: Add SVA domain support
>   iommu/sva: Refactoring iommu_sva_bind/unbind_device()
>   iommu: Remove SVA related callbacks from iommu ops
>   iommu: Prepare IOMMU domain for IOPF
>   iommu: Per-domain I/O page fault handling
>   iommu: Rename iommu-sva-lib.{c,h}

Applied, thanks everyone.