[PATCH v3 0/2] Simplify and restrict IOMMU SVA APIs
From: Jacob Pan
Date: Fri Apr 16 2021 - 17:21:43 EST
A couple of small changes to simplify and restrict SVA APIs. The motivation
is to make PASID allocation palatable for cgroup consumptions. Misc cgroup
is merged for v5.13, it can be extended for IOASID as another scalar
resource.
I have not tested on ARM platforms due to availability. Would appreciate
if someone could help with the testing on uacce based SVA usages.
Thanks,
Jacob
ChangeLog:
V3 - stop passing mm to sva_bind IOMMU ops, no need to take mm refcount
in the common SVA code.
- deleted flag variable in idxd driver
V2
- retained mm argument in iommu_sva_alloc_pasid()
- keep generic supervisor flag separated from vt-d's SRE
- move flag declaration out of CONFIG_IOMMU_API
Jacob Pan (2):
iommu/sva: Tighten SVA bind API with explicit flags
iommu/sva: Remove mm parameter from SVA bind API
drivers/dma/idxd/cdev.c | 2 +-
drivers/dma/idxd/init.c | 7 ++----
.../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 12 ++++++----
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 5 ++--
drivers/iommu/intel/svm.c | 19 ++++++++-------
drivers/iommu/iommu-sva-lib.c | 11 +++++----
drivers/iommu/iommu-sva-lib.h | 2 +-
drivers/iommu/iommu.c | 13 +++++------
drivers/misc/uacce/uacce.c | 2 +-
include/linux/intel-iommu.h | 3 +--
include/linux/intel-svm.h | 17 ++------------
include/linux/iommu.h | 23 ++++++++++++++-----
12 files changed, 56 insertions(+), 60 deletions(-)
base-commit: e49d033bddf5b565044e2abe4241353959bc9120
--
2.25.1