of_node_put needs to be called when the device node which is got
from of_parse_phandle has finished using.

Signed-off-by: Peter Chen <peter.c...@nxp.com>
---
 drivers/net/ethernet/cavium/octeon/octeon_mgmt.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c 
b/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
index e8bc15b..4ab404f 100644
--- a/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
+++ b/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
@@ -1513,6 +1513,7 @@ static int octeon_mgmt_probe(struct platform_device *pdev)
        return 0;
 
 err:
+       of_node_put(p->phy_np);
        free_netdev(netdev);
        return result;
 }
@@ -1520,8 +1521,10 @@ err:
 static int octeon_mgmt_remove(struct platform_device *pdev)
 {
        struct net_device *netdev = platform_get_drvdata(pdev);
+       struct octeon_mgmt *p = netdev_priv(netdev);
 
        unregister_netdev(netdev);
+       of_node_put(p->phy_np);
        free_netdev(netdev);
        return 0;
 }
-- 
1.9.1

Reply via email to