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