]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drivers/perf: fix the missed ida_simple_remove() in ddr_perf_probe()
authorJing Xiangfeng <jingxiangfeng@huawei.com>
Thu, 17 Jun 2021 12:26:14 +0000 (20:26 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Jul 2021 14:53:14 +0000 (16:53 +0200)
[ Upstream commit d96b1b8c9f79b6bb234a31c80972a6f422079376 ]

ddr_perf_probe() misses to call ida_simple_remove() in an error path.
Jump to cpuhp_state_err to fix it.

Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Link: https://lore.kernel.org/r/20210617122614.166823-1-jingxiangfeng@huawei.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/perf/fsl_imx8_ddr_perf.c

index 09f44c6e2eaf666edf47b7a9c3023b3b222565fc..726ed8f59868c37306f5d25fb288cd700b11935e 100644 (file)
@@ -562,8 +562,10 @@ static int ddr_perf_probe(struct platform_device *pdev)
 
        name = devm_kasprintf(&pdev->dev, GFP_KERNEL, DDR_PERF_DEV_NAME "%d",
                              num);
-       if (!name)
-               return -ENOMEM;
+       if (!name) {
+               ret = -ENOMEM;
+               goto cpuhp_state_err;
+       }
 
        pmu->devtype_data = of_device_get_match_data(&pdev->dev);