Hi folks, This is a follow-up series after several discussions on blocking domain. The latest discussion could be found here.
https://lore.kernel.org/linux-iommu/20220510140238.gd49...@nvidia.com/ This makes blocking domain static by: - Each IOMMU driver is required to report domain ops for the blocking domain in its iommu_ops. Some IOMMU drivers support detaching domain by clearing an entry in the device context, while others not. To distinguish this capability among the IOMMU drivers, a flag is added to the domain ops. - Similar to the default domain, each iommu group also has a static blokcing domain. The blocking domain is allocated when the first device joins the group and freed after the last device leaves. - As .detach_dev equals to either setting the default domain or blocking domain to the device, this callback is not needed anymore. It is removed in this series. Please kindly review and suggest. Very appreciated. Best regards, baolu Lu Baolu (5): iommu: Rename attach_dev to set_dev in domain ops iommu: Add blocking_domain_ops field in iommu_ops iommu: Make blocking domain static for iommu group iommu: Use blocking domain for empty domain attaching iommu: Remove .detach_dev from iommu domain ops include/linux/iommu.h | 13 ++- include/trace/events/iommu.h | 7 -- drivers/iommu/amd/iommu.c | 15 ++- drivers/iommu/apple-dart.c | 15 ++- drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 5 +- drivers/iommu/arm/arm-smmu/arm-smmu.c | 5 +- drivers/iommu/arm/arm-smmu/qcom_iommu.c | 15 ++- drivers/iommu/exynos-iommu.c | 15 ++- drivers/iommu/fsl_pamu_domain.c | 15 ++- drivers/iommu/intel/iommu.c | 15 ++- drivers/iommu/iommu-traces.c | 1 - drivers/iommu/iommu.c | 122 ++++++++++---------- drivers/iommu/ipmmu-vmsa.c | 15 ++- drivers/iommu/msm_iommu.c | 15 ++- drivers/iommu/mtk_iommu.c | 15 ++- drivers/iommu/mtk_iommu_v1.c | 15 ++- drivers/iommu/omap-iommu.c | 15 ++- drivers/iommu/rockchip-iommu.c | 15 ++- drivers/iommu/s390-iommu.c | 15 ++- drivers/iommu/sprd-iommu.c | 14 ++- drivers/iommu/sun50i-iommu.c | 15 ++- drivers/iommu/tegra-gart.c | 15 ++- drivers/iommu/tegra-smmu.c | 15 ++- drivers/iommu/virtio-iommu.c | 5 +- 24 files changed, 299 insertions(+), 113 deletions(-) -- 2.25.1 _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu