The original post and intent of this series is here. https://lore.kernel.org/linux-iommu/20211115020552.2378167-1-baolu.lu@xxxxxxxxxxxxxxx/ Change log: v1: initial post - https://lore.kernel.org/linux-iommu/20211115020552.2378167-1-baolu.lu@xxxxxxxxxxxxxxx/ v2: - Move kernel dma ownership auto-claiming from driver core to bus callback. [Greg/Christoph/Robin/Jason] https://lore.kernel.org/linux-iommu/20211115020552.2378167-1-baolu.lu@xxxxxxxxxxxxxxx/T/#m153706912b770682cb12e3c28f57e171aa1f9d0c - Code and interface refactoring for iommu_set/release_dma_owner() interfaces. [Jason] https://lore.kernel.org/linux-iommu/20211115020552.2378167-1-baolu.lu@xxxxxxxxxxxxxxx/T/#mea70ed8e4e3665aedf32a5a0a7db095bf680325e - [NEW]Add new iommu_attach/detach_device_shared() interfaces for multiple devices group. [Robin/Jason] https://lore.kernel.org/linux-iommu/20211115020552.2378167-1-baolu.lu@xxxxxxxxxxxxxxx/T/#mea70ed8e4e3665aedf32a5a0a7db095bf680325e - [NEW]Use iommu_attach/detach_device_shared() in drm/tegra drivers. - Refactoring and description refinement. This is based on v5.16-rc2 and available on github: https://github.com/LuBaolu/intel-iommu/commits/iommu-dma-ownership-v2 Best regards, baolu Jason Gunthorpe (2): vfio: Delete the unbound_list drm/tegra: Use the iommu dma_owner mechanism Lu Baolu (15): iommu: Add device dma ownership set/release interfaces driver core: Add dma_unconfigure callback in bus_type PCI: Add driver dma ownership management driver core: platform: Add driver dma ownership management amba: Add driver dma ownership management bus: fsl-mc: Add driver dma ownership management PCI: pci_stub: Suppress kernel DMA ownership auto-claiming PCI: portdrv: Suppress kernel DMA ownership auto-claiming iommu: Add security context management for assigned devices iommu: Expose group variants of dma ownership interfaces iommu: Add iommu_at[de]tach_device_shared() for multi-device groups vfio: Set DMA USER ownership for VFIO devices vfio: Remove use of vfio_group_viable() vfio: Remove iommu group notifier iommu: Remove iommu group changes notifier include/linux/amba/bus.h | 1 + include/linux/device/bus.h | 3 + include/linux/fsl/mc.h | 5 + include/linux/iommu.h | 93 ++++++-- include/linux/pci.h | 5 + include/linux/platform_device.h | 1 + drivers/amba/bus.c | 30 ++- drivers/base/dd.c | 7 +- drivers/base/platform.c | 30 ++- drivers/bus/fsl-mc/fsl-mc-bus.c | 26 +- drivers/gpu/drm/tegra/dc.c | 1 + drivers/gpu/drm/tegra/drm.c | 55 ++--- drivers/gpu/drm/tegra/gr2d.c | 1 + drivers/gpu/drm/tegra/gr3d.c | 1 + drivers/gpu/drm/tegra/vic.c | 1 + drivers/iommu/iommu.c | 329 ++++++++++++++++++++------ drivers/pci/pci-driver.c | 21 ++ drivers/pci/pci-stub.c | 1 + drivers/pci/pcie/portdrv_pci.c | 2 + drivers/vfio/fsl-mc/vfio_fsl_mc.c | 1 + drivers/vfio/pci/vfio_pci.c | 1 + drivers/vfio/platform/vfio_amba.c | 1 + drivers/vfio/platform/vfio_platform.c | 1 + drivers/vfio/vfio.c | 248 ++----------------- 24 files changed, 502 insertions(+), 363 deletions(-) -- 2.25.1