diff mbox series

net: bcmgenet: Fix a resource leak in an error handling path in the probe functin

Message ID 20201212182005.120437-1-christophe.jaillet@wanadoo.fr
State New
Headers show
Series net: bcmgenet: Fix a resource leak in an error handling path in the probe functin | expand

Commit Message

Christophe JAILLET Dec. 12, 2020, 6:20 p.m. UTC
If the 'register_netdev()' call fails, we must undo a previous
'bcmgenet_mii_init()' call.

Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
The missing 'bcmgenet_mii_exit()' call is added here, instead of in the
error handling path in order to avoid some goto spaghetti code.
---
 drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Florian Fainelli Dec. 12, 2020, 11:05 p.m. UTC | #1
On 12/12/2020 10:20 AM, Christophe JAILLET wrote:
> If the 'register_netdev()' call fails, we must undo a previous
> 'bcmgenet_mii_init()' call.
> 
> Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

Acked-by: Florian Fainelli <f.fainelli@gmail.com>

> ---
> The missing 'bcmgenet_mii_exit()' call is added here, instead of in the
> error handling path in order to avoid some goto spaghetti code.

Yes that makes sense, thanks!
patchwork-bot+netdevbpf@kernel.org Dec. 16, 2020, 7:10 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Sat, 12 Dec 2020 19:20:05 +0100 you wrote:
> If the 'register_netdev()' call fails, we must undo a previous

> 'bcmgenet_mii_init()' call.

> 

> Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")

> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

> ---

> The missing 'bcmgenet_mii_exit()' call is added here, instead of in the

> error handling path in order to avoid some goto spaghetti code.

> 

> [...]


Here is the summary with links:
  - net: bcmgenet: Fix a resource leak in an error handling path in the probe functin
    https://git.kernel.org/netdev/net/c/4375ada01963

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index be85dad2e3bc..fcca023f22e5 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -4069,8 +4069,10 @@  static int bcmgenet_probe(struct platform_device *pdev)
 	clk_disable_unprepare(priv->clk);
 
 	err = register_netdev(dev);
-	if (err)
+	if (err) {
+		bcmgenet_mii_exit(dev);
 		goto err;
+	}
 
 	return err;