All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] net: mvneta: bm: fix device reference leak on failed lookup
@ 2026-07-09  8:27 Johan Hovold
  2026-07-09 23:53 ` Harshitha Ramamurthy
  0 siblings, 1 reply; 2+ messages in thread
From: Johan Hovold @ 2026-07-09  8:27 UTC (permalink / raw)
  To: Marcin Wojtas, Andrew Lunn, David S Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni
  Cc: Gregory CLEMENT, netdev, Johan Hovold, stable

Make sure to drop the reference taken to the buffer manager device when
attempting to look up its driver data before the driver has been bound.

Note that holding a reference to a device does not prevent its driver
data from going away.

Fixes: 965cbbec7f20 ("net: mvneta: remove data pointer usage from device_node structure")
Cc: stable@vger.kernel.org	# 4.19
Cc: Gregory CLEMENT <gregory.clement@bootlin.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
---
 drivers/net/ethernet/marvell/mvneta_bm.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/marvell/mvneta_bm.c b/drivers/net/ethernet/marvell/mvneta_bm.c
index 6bb380494919..128fe1f512b4 100644
--- a/drivers/net/ethernet/marvell/mvneta_bm.c
+++ b/drivers/net/ethernet/marvell/mvneta_bm.c
@@ -395,9 +395,20 @@ static void mvneta_bm_put_sram(struct mvneta_bm *priv)
 
 struct mvneta_bm *mvneta_bm_get(struct device_node *node)
 {
-	struct platform_device *pdev = of_find_device_by_node(node);
+	struct platform_device *pdev;
+	struct mvneta_bm *priv;
+
+	pdev = of_find_device_by_node(node);
+	if (!pdev)
+		return NULL;
+
+	priv = platform_get_drvdata(pdev);
+	if (!priv) {
+		platform_device_put(pdev);
+		return NULL;
+	}
 
-	return pdev ? platform_get_drvdata(pdev) : NULL;
+	return priv;
 }
 EXPORT_SYMBOL_GPL(mvneta_bm_get);
 
-- 
2.54.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-07-09 23:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-09  8:27 [PATCH] net: mvneta: bm: fix device reference leak on failed lookup Johan Hovold
2026-07-09 23:53 ` Harshitha Ramamurthy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.