]> www.infradead.org Git - users/dwmw2/linux.git/commit
iommu: Introduce domain attachment handle
authorLu Baolu <baolu.lu@linux.intel.com>
Tue, 2 Jul 2024 06:34:35 +0000 (14:34 +0800)
committerWill Deacon <will@kernel.org>
Thu, 4 Jul 2024 12:46:18 +0000 (13:46 +0100)
commit14678219cf4093e897ab353fd78eab7994d1be7d
tree606c28e3ebdd150803572d5b5aad0586a46e086b
parent83a7eefedc9b56fe7bfeff13b6c7356688ffa670
iommu: Introduce domain attachment handle

Currently, when attaching a domain to a device or its PASID, domain is
stored within the iommu group. It could be retrieved for use during the
window between attachment and detachment.

With new features introduced, there's a need to store more information
than just a domain pointer. This information essentially represents the
association between a domain and a device. For example, the SVA code
already has a custom struct iommu_sva which represents a bond between
sva domain and a PASID of a device. Looking forward, the IOMMUFD needs
a place to store the iommufd_device pointer in the core, so that the
device object ID could be quickly retrieved in the critical fault handling
path.

Introduce domain attachment handle that explicitly represents the
attachment relationship between a domain and a device or its PASID.

Co-developed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Link: https://lore.kernel.org/r/20240702063444.105814-2-baolu.lu@linux.intel.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/dma/idxd/init.c
drivers/iommu/iommu-sva.c
drivers/iommu/iommu.c
include/linux/iommu.h