Message ID | 20200827141629.101802-1-jingxiangfeng@huawei.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | clk: qcom: lpass: Correct goto target in lpass_core_sc7180_probe() | expand |
Quoting Jing Xiangfeng (2020-08-27 07:16:29) > lpass_core_sc7180_probe() misses to call pm_clk_destroy() and > pm_runtime_disable() in error paths. Correct goto target to fix it. > This issue is found by code inspection. > > Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com> > --- HMm.. presumably Fixes: edab812d802d ("clk: qcom: lpass: Add support for LPASS clock controller for SC7180") should be added?
On 2020/9/10 17:03, Stephen Boyd wrote: > Quoting Jing Xiangfeng (2020-08-27 07:16:29) >> lpass_core_sc7180_probe() misses to call pm_clk_destroy() and >> pm_runtime_disable() in error paths. Correct goto target to fix it. >> This issue is found by code inspection. >> >> Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com> >> --- > > HMm.. presumably > > Fixes: edab812d802d ("clk: qcom: lpass: Add support for LPASS clock controller for SC7180") > > should be added? Ok, I will send a v2 with it. Thanks > . >
Quoting Jing Xiangfeng (2020-08-27 07:16:29) > lpass_core_sc7180_probe() misses to call pm_clk_destroy() and > pm_runtime_disable() in error paths. Correct goto target to fix it. > This issue is found by code inspection. > > Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com> > --- Applied to clk-fixes
diff --git a/drivers/clk/qcom/lpasscorecc-sc7180.c b/drivers/clk/qcom/lpasscorecc-sc7180.c index d4c1864e1ee9..228d08f5d26f 100644 --- a/drivers/clk/qcom/lpasscorecc-sc7180.c +++ b/drivers/clk/qcom/lpasscorecc-sc7180.c @@ -420,17 +420,18 @@ static int lpass_core_sc7180_probe(struct platform_device *pdev) pm_runtime_enable(&pdev->dev); ret = pm_clk_create(&pdev->dev); if (ret) - return ret; + goto disable_pm_runtime; ret = pm_clk_add(&pdev->dev, "iface"); if (ret < 0) { dev_err(&pdev->dev, "failed to acquire iface clock\n"); - goto disable_pm_runtime; + goto destroy_pm_clk; } + ret = -EINVAL; clk_probe = of_device_get_match_data(&pdev->dev); if (!clk_probe) - return -EINVAL; + goto destroy_pm_clk; ret = clk_probe(pdev); if (ret)
lpass_core_sc7180_probe() misses to call pm_clk_destroy() and pm_runtime_disable() in error paths. Correct goto target to fix it. This issue is found by code inspection. Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com> --- drivers/clk/qcom/lpasscorecc-sc7180.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)