projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7a2294c
)
net: sfp: fix memory leak in sfp_probe()
author
Jianglei Nie
<niejianglei2021@163.com>
Wed, 29 Jun 2022 07:55:50 +0000
(15:55 +0800)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 21 Jul 2022 19:24:36 +0000
(21:24 +0200)
[ Upstream commit
0a18d802d65cf662644fd1d369c86d84a5630652
]
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: Jianglei Nie <niejianglei2021@163.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link:
https://lore.kernel.org/r/20220629075550.2152003-1-niejianglei2021@163.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/phy/sfp.c
patch
|
blob
|
history
diff --git
a/drivers/net/phy/sfp.c
b/drivers/net/phy/sfp.c
index 90dfefc1f5f8daf401bde044692ef2bdeb5f8c1d..028a5df5c53851cc441b13891dea7ae9ed95ac35 100644
(file)
--- a/
drivers/net/phy/sfp.c
+++ b/
drivers/net/phy/sfp.c
@@
-2504,7
+2504,7
@@
static int sfp_probe(struct platform_device *pdev)
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)
return err;