Commit 0a18d802 authored by Jianglei Nie's avatar Jianglei Nie Committed by Paolo Abeni
Browse files

net: sfp: fix memory leak in sfp_probe()



sfp_probe() allocates a memory chunk from sfp with sfp_alloc(). When
devm_add_action() fails, sfp is not freed, which leads to a memory leak.

We should use devm_add_action_or_reset() instead of devm_add_action().

Signed-off-by: default avatarJianglei Nie <niejianglei2021@163.com>
Reviewed-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://lore.kernel.org/r/20220629075550.2152003-1-niejianglei2021@163.com


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent 665030fd
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -2516,7 +2516,7 @@ static int sfp_probe(struct platform_device *pdev)


	platform_set_drvdata(pdev, sfp);
	platform_set_drvdata(pdev, sfp);


	err = devm_add_action(sfp->dev, sfp_cleanup, sfp);
	err = devm_add_action_or_reset(sfp->dev, sfp_cleanup, sfp);
	if (err < 0)
	if (err < 0)
		return err;
		return err;