[PATCH 4.14 30/40] of: mdio: Add of_node_put() when breaking out of for_each_xx

From: Greg Kroah-Hartman
Date: Mon Sep 26 2022 - 06:27:09 EST


From: Liang He <windhl@xxxxxxx>

[ Upstream commit 1c48709e6d9d353acaaac1d8e33474756b121d78 ]

In of_mdiobus_register(), we should call of_node_put() for 'child'
escaped out of for_each_available_child_of_node().

Fixes: 66bdede495c7 ("of_mdio: Fix broken PHY IRQ in case of probe deferral")
Co-developed-by: Miaoqian Lin <linmq006@xxxxxxxxx>
Signed-off-by: Miaoqian Lin <linmq006@xxxxxxxxx>
Signed-off-by: Liang He <windhl@xxxxxxx>
Link: https://lore.kernel.org/r/20220913125659.3331969-1-windhl@xxxxxxx
Signed-off-by: Jakub Kicinski <kuba@xxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/of/of_mdio.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/of/of_mdio.c b/drivers/of/of_mdio.c
index 8b7d3e64b8ca..41a23db21392 100644
--- a/drivers/of/of_mdio.c
+++ b/drivers/of/of_mdio.c
@@ -272,6 +272,7 @@ int of_mdiobus_register(struct mii_bus *mdio, struct device_node *np)
return 0;

unregister:
+ of_node_put(child);
mdiobus_unregister(mdio);
return rc;
}
--
2.35.1