net: dsa: microchip: lan937x: fix reference count leak in lan937x_mdio_register()

This node pointer is returned by of_find_compatible_node() with
refcount incremented in this function. of_node_put() on it before
exitting this function.

Fixes: c9cd961c0d ("net: dsa: microchip: lan937x: add interrupt support for port phy link")
Signed-off-by: Sun Ke <sunke32@huawei.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20220908040226.871690-1-sunke32@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Sun Ke 2022-09-08 12:02:26 +08:00 committed by Jakub Kicinski
parent 42666b2c45
commit 2f8a786f47

View File

@ -238,8 +238,10 @@ static int lan937x_mdio_register(struct ksz_device *dev)
ds->slave_mii_bus = bus;
ret = lan937x_irq_phy_setup(dev);
if (ret)
if (ret) {
of_node_put(mdio_np);
return ret;
}
ret = devm_of_mdiobus_register(ds->dev, bus, mdio_np);
if (ret) {