During the review of iommufd pasid series, Kevin and Jason suggested attaching PASID to the blocked domain hence replacing the usage of remove_dev_pasid() op [1]. This makes sense as it makes the PASID path aligned with the RID path which attaches the RID to the blocked_domain when it is to be blocked. To do it, it requires passing the old domain to the iommu driver. This has been done in [2]. This series makes the Intel iommu driver, ARM SMMUv3 driver and AMD iommu driver support attaching PASID to the blocked domain. And in the end remove the remove_dev_pasid op from iommu_ops. [1] https://lore.kernel.org/linux-iommu/20240816130202.GB2032816@xxxxxxxxxx/ [2] https://lore.kernel.org/linux-iommu/20241108021406.173972-1-baolu.lu@xxxxxxxxxxxxxxx/ v6: - Add Jason's r-b on patch 01. - Rebased on top of 6.13-rc1 v5: https://lore.kernel.org/linux-iommu/20241113134613.7173-1-yi.l.liu@xxxxxxxxx/ - Fix an issue spotted by Baolu in patch 01 of v4. The new version lifts the group check to be the first check, hence it can ensure a valid iommu_ops returned dev_iommu_ops(). Per this changes, it also removes the duplicated dev_has_iommu() check as group check can replace it. Due to the changes, drop the r-b tags on this patch. - Add Baolu's r-b tag. v4: https://lore.kernel.org/linux-iommu/20241108120427.13562-1-yi.l.liu@xxxxxxxxx/ - Remove unnecessary braces in patch 02 (Vasant) - Minor tweaks to patch 01 and 03 (Kevin) - Add r-b tags from Jason, Vasant, Kevin v3: https://lore.kernel.org/linux-iommu/20241104132033.14027-1-yi.l.liu@xxxxxxxxx/ - Add a patch to check remove_dev_pasid() in iommu_attach_device_pasid() - Split patch 01 of v2 into two patches, drop the r-b of this patch due the split. - Add AMD iommu blocked domain pasid support (Jason) - Remove the remove_dev_pasid op as all the iommu drivers that support pasid attach have supported attaching pasid to blocked domain. v2: https://lore.kernel.org/linux-iommu/20241018055824.24880-1-yi.l.liu@xxxxxxxxx/#t - Add Kevin's r-b - Adjust the order of patch 03 of v1, it should be the first patch (Baolu) v1: https://lore.kernel.org/linux-iommu/20240912130653.11028-1-yi.l.liu@xxxxxxxxx/ Regards, Yi Liu Jason Gunthorpe (1): iommu/arm-smmu-v3: Make the blocked domain support PASID Yi Liu (6): iommu: Prevent pasid attach if no ops->remove_dev_pasid iommu: Consolidate the ops->remove_dev_pasid usage into a helper iommu: Detaching pasid by attaching to the blocked_domain iommu/vt-d: Make the blocked domain support PASID iommu/amd: Make the blocked domain support PASID iommu: Remove the remove_dev_pasid op drivers/iommu/amd/iommu.c | 10 +++++- drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 12 +++---- drivers/iommu/intel/iommu.c | 15 ++++++--- drivers/iommu/iommu.c | 35 +++++++++++++-------- include/linux/iommu.h | 5 --- 5 files changed, 48 insertions(+), 29 deletions(-) -- 2.34.1