net: bcmasp: add missing of_node_put
authorJulia Lawall <Julia.Lawall@inria.fr>
Thu, 7 Sep 2023 09:55:12 +0000 (11:55 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sun, 10 Sep 2023 17:50:37 +0000 (18:50 +0100)
for_each_available_child_of_node performs an of_node_get
on each iteration, so a break out of the loop requires an
of_node_put.

This was done using the Coccinelle semantic patch
iterators/for_each_child.cocci

Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/asp2/bcmasp.c

index d63d321..f048e3d 100644 (file)
@@ -1300,6 +1300,7 @@ static int bcmasp_probe(struct platform_device *pdev)
                if (!intf) {
                        dev_err(dev, "Cannot create eth interface %d\n", i);
                        bcmasp_remove_intfs(priv);
+                       of_node_put(intf_node);
                        goto of_put_exit;
                }
                list_add_tail(&intf->list, &priv->intfs);