of_find_device_by_node() takes a reference on the FMan device. It is
released on the error paths, but the successful path returns without
dropping it, leaking the reference.
Release the reference when it is not needed anymore.
Fixes: bf2b09fedc17 ("fsl/fman: Fix missing put_device() call in fman_port_probe")
Cc: stable@vger.kernel.org
Signed-off-by: Wentao Liang <redacted>
---
drivers/net/ethernet/freescale/fman/fman_port.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/freescale/fman/fman_port.c b/drivers/net/ethernet/freescale/fman/fman_port.c
index 1b8fef69114e..f44a89016512 100644
--- a/drivers/net/ethernet/freescale/fman/fman_port.c
+++ b/drivers/net/ethernet/freescale/fman/fman_port.c
@@ -1868,6 +1868,8 @@ static int fman_port_probe(struct platform_device *of_dev)
dev_set_drvdata(&of_dev->dev, port);
+ put_device(&fm_pdev->dev);
+
return 0;
put_device:
--
2.34.1