diff options
author | Sun Ke <sunke32@huawei.com> | 2022-09-08 07:02:26 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-09-20 00:17:59 +0300 |
commit | 2f8a786f472445d66348859af8795aa6ffd9ff8c (patch) | |
tree | a908c8832c644963ca6acc051bf586b9afca8137 | |
parent | 42666b2c452ce87894786aae05e3fad3cfc6cb59 (diff) | |
download | linux-2f8a786f472445d66348859af8795aa6ffd9ff8c.tar.xz |
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: c9cd961c0d43 ("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>
-rw-r--r-- | drivers/net/dsa/microchip/lan937x_main.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/dsa/microchip/lan937x_main.c b/drivers/net/dsa/microchip/lan937x_main.c index 9b6760b1e572..3e83f8ca0f09 100644 --- a/drivers/net/dsa/microchip/lan937x_main.c +++ b/drivers/net/dsa/microchip/lan937x_main.c @@ -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) { |