]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
iommu: Set owner token to SVA domain
authorLu Baolu <baolu.lu@linux.intel.com>
Fri, 8 Dec 2023 01:53:14 +0000 (09:53 +0800)
committerJoerg Roedel <jroedel@suse.de>
Tue, 12 Dec 2023 09:16:32 +0000 (10:16 +0100)
Commit a9c362db3920 ("iommu: Validate that devices match domains") added
an owner token to the iommu_domain. This token is checked during domain
attachment to RID or PASID through the generic iommu interfaces.

The SVA domains are attached to PASIDs through those iommu interfaces.
Therefore, they require the owner token to be set during allocation.
Otherwise, they fail to attach.

Set the owner token for SVA domains.

Fixes: a9c362db3920 ("iommu: Validate that devices match domains")
Cc: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20231208015314.320663-1-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/iommu.c

index 0d25468d53a68a7afa851d52c610ac0293637424..d0a28667479a82bf8eb4f3d9db35e9422ff51a09 100644 (file)
@@ -3617,6 +3617,7 @@ struct iommu_domain *iommu_sva_domain_alloc(struct device *dev,
        domain->type = IOMMU_DOMAIN_SVA;
        mmgrab(mm);
        domain->mm = mm;
+       domain->owner = ops;
        domain->iopf_handler = iommu_sva_handle_iopf;
        domain->fault_data = mm;