[PATCH v14 00/10] iommu: I/O page faults for SMMUv3

Jean-Philippe Brucker
2021-04-01T18:31:55Z

Add stall support to the SMMUv3 driver, along with a common I/O Page
Fault handler.

Since [v13] I added review and ack tags (Thanks!), and a lockdep_assert.
It would be good to have all of it in v5.13, since patch 10 introduces
the first user for the IOPF interface from patch 6. But if that's not
possible, please pick patches 1-6 so the Vt-d driver can start using
them.

[v13] https://lore.kernel.org/linux-iommu/20210302092644.2553014-1-jean-philippe@linaro.org/

Jean-Philippe Brucker (10):
iommu: Fix comment for struct iommu_fwspec
iommu/arm-smmu-v3: Use device properties for pasid-num-bits
iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA
iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF
uacce: Enable IOMMU_DEV_FEAT_IOPF
iommu: Add a page fault handler
iommu/arm-smmu-v3: Maintain a SID->device structure
dt-bindings: document stall property for IOMMU masters
ACPI/IORT: Enable stall support for platform devices
iommu/arm-smmu-v3: Add stall support for platform devices

drivers/iommu/Makefile | 1 +
.../devicetree/bindings/iommu/iommu.txt | 18 +
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 56 ++-
drivers/iommu/iommu-sva-lib.h | 53 ++
include/linux/iommu.h | 26 +-
drivers/acpi/arm64/iort.c | 15 +-
.../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 59 ++-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 355 ++++++++++++--
drivers/iommu/intel/iommu.c | 11 +-
drivers/iommu/io-pgfault.c | 461 ++++++++++++++++++
drivers/iommu/of_iommu.c | 5 -
drivers/misc/uacce/uacce.c | 39 +-
12 files changed, 1025 insertions(+), 74 deletions(-)
create mode 100644 drivers/iommu/io-pgfault.c

--
2.31.1