Re: [PATCH] iommu: use iommu_group_ref_get to hold group reference

From: Robin Murphy
Date: Tue Aug 30 2022 - 05:34:00 EST


On 2022-08-26 03:40, Yuan Can wrote:
Replace kobject_get with iommu_group_ref_get for better
readability.

I disagree, sorry. iommu_group_ref_get() is meant as a helper for drivers, and the core code uses the raw kobject internally everywhere else, including several other times within this function. Especially the raw kobject_put() in the cleanup path - in terms of readability I'd say it's actively harmful to obfuscate what that pairs with.

Thanks,
Robin.

Signed-off-by: Yuan Can <yuancan@xxxxxxxxxx>
---
drivers/iommu/iommu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 780fb7071577..8e7f30f7188c 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -903,7 +903,7 @@ int iommu_group_add_device(struct iommu_group *group, struct device *dev)
goto err_free_name;
}
- kobject_get(group->devices_kobj);
+ iommu_group_ref_get(group);
dev->iommu_group = group;