iommu: Remove duplicate ida_free in iommu_group_alloc
authorYuan Can <yuancan@huawei.com>
Mon, 15 Aug 2022 03:14:23 +0000 (03:14 +0000)
committerJoerg Roedel <jroedel@suse.de>
Wed, 7 Sep 2022 08:52:47 +0000 (10:52 +0200)
In the iommu_group_alloc, when the kobject_init_and_add
failed, the group->kobj is associate with iommu_group_ktype,
thus its release function iommu_group_release will be called
by the following kobject_put. The iommu_group_release calls
ida_free with the group->id, so we do not need to do it before
kobject_put.

Signed-off-by: Yuan Can <yuancan@huawei.com>
Link: https://lore.kernel.org/r/20220815031423.94548-1-yuancan@huawei.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/iommu.c

index 31b5f4ceb2e95c4cbb76364c676f42fd64646394..12e49dcf91bd0a4d71994ed170034fe0ace00290 100644 (file)
@@ -654,7 +654,6 @@ struct iommu_group *iommu_group_alloc(void)
        ret = kobject_init_and_add(&group->kobj, &iommu_group_ktype,
                                   NULL, "%d", group->id);
        if (ret) {
-               ida_free(&iommu_group_ida, group->id);
                kobject_put(&group->kobj);
                return ERR_PTR(ret);
        }