Message ID | YuJ4aZyMUlG6yGGa@kili (mailing list archive) |
---|---|
State | Accepted |
Commit | 4d3d3a1b244fd54629a6b7047f39a7bbc8d11910 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] stmmac: dwmac-mediatek: fix resource leak in probe | expand |
Hello: This patch was applied to netdev/net.git (master) by Jakub Kicinski <kuba@kernel.org>: On Thu, 28 Jul 2022 14:52:09 +0300 you wrote: > If mediatek_dwmac_clks_config() fails, then call stmmac_remove_config_dt() > before returning. Otherwise it is a resource leak. > > Fixes: fa4b3ca60e80 ("stmmac: dwmac-mediatek: fix clock issue") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) Here is the summary with links: - [net] stmmac: dwmac-mediatek: fix resource leak in probe https://git.kernel.org/netdev/net/c/4d3d3a1b244f You are awesome, thank you!
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c index ca8ab290013c..d42e1afb6521 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c @@ -688,18 +688,19 @@ static int mediatek_dwmac_probe(struct platform_device *pdev) ret = mediatek_dwmac_clks_config(priv_plat, true); if (ret) - return ret; + goto err_remove_config_dt; ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res); - if (ret) { - stmmac_remove_config_dt(pdev, plat_dat); + if (ret) goto err_drv_probe; - } return 0; err_drv_probe: mediatek_dwmac_clks_config(priv_plat, false); +err_remove_config_dt: + stmmac_remove_config_dt(pdev, plat_dat); + return ret; }
If mediatek_dwmac_clks_config() fails, then call stmmac_remove_config_dt() before returning. Otherwise it is a resource leak. Fixes: fa4b3ca60e80 ("stmmac: dwmac-mediatek: fix clock issue") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> --- drivers/net/ethernet/stmicro/stmmac/dwmac-mediatek.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)