Re: [PATCH] iommu: Sort out domain user data

From: Nicolin Chen
Date: Fri Feb 28 2025 - 15:25:51 EST


On Fri, Feb 28, 2025 at 11:31:11AM +0000, Robin Murphy wrote:
> +enum iommu_domain_cookie_type {
> + IOMMU_NO_COOKIE,
> + IOMMU_DMA_IOVA_COOKIE,
> + IOMMU_DMA_MSI_COOKIE,
> + IOMMU_FAULT_HANDLER_COOKIE,
> + IOMMU_SVA_COOKIE,

I would like to change them to IOMMU_COOKIE_* so the iommufd one
wouldn't feel redundant like "IOMMU_IOMMUFD_COOKIE".

If you don't mind, I will make the following list:
- IOMMU_NO_COOKIE,
- IOMMU_DMA_IOVA_COOKIE,
- IOMMU_DMA_MSI_COOKIE,
- IOMMU_FAULT_HANDLER_COOKIE,
- IOMMU_SVA_COOKIE,
+ IOMMU_COOKIE_NONE,
+ IOMMU_COOKIE_DMA_IOVA,
+ IOMMU_COOKIE_DMA_MSI,
+ IOMMU_COOKIE_FAULT_HANDLER,
+ IOMMU_COOKIE_SVA,
+ IOMMU_COOKIE_IOMMUFD,

then:
diff --git a/drivers/iommu/iommufd/hw_pagetable.c b/drivers/iommu/iommufd/hw_pagetable.c
index 7de6e914232e..227514030655 100644
--- a/drivers/iommu/iommufd/hw_pagetable.c
+++ b/drivers/iommu/iommufd/hw_pagetable.c
@@ -413,6 +413,7 @@ int iommufd_hwpt_alloc(struct iommufd_ucmd *ucmd)
iommufd_put_object(ucmd->ictx, &fault->obj);
}
hwpt->domain->iommufd_hwpt = hwpt;
+ hwpt->domain->cookie_type = IOMMU_COOKIE_IOMMUFD;

cmd->out_hwpt_id = hwpt->obj.id;
rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd));

And I can put this in my cleanup series v3, as Jason is asking.

Thanks
Nicolin