The local variable ae_node in function hns_nic_dev_probe takes the return value of of_parse_phandle, which gets a node but does not put it. This may cause a memory leak. Hence put ae_node after the last time it is invoked. Issue found with Coccinelle.
Signed-off-by: Nishka Dasgupta <nishkadg.li...@gmail.com> --- drivers/net/ethernet/hisilicon/hns/hns_enet.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/hisilicon/hns/hns_enet.c b/drivers/net/ethernet/hisilicon/hns/hns_enet.c index 2235dd55fab2..b26e84929e1e 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c @@ -2309,6 +2309,7 @@ static int hns_nic_dev_probe(struct platform_device *pdev) goto out_read_prop_fail; } priv->fwnode = &ae_node->fwnode; + of_node_put(ae_node); } else if (is_acpi_node(dev->fwnode)) { struct fwnode_reference_args args; -- 2.19.1