2021-03-22 18:23:51

by Julia Lawall

[permalink] [raw]
Subject: [PATCH] of: overlay: fix for_each_child.cocci warnings

From: kernel test robot <[email protected]>

Function "for_each_child_of_node" should have of_node_put() before goto.

Generated by: scripts/coccinelle/iterators/for_each_child.cocci

Fixes: 82c2d81361ec ("coccinelle: iterators: Add for_each_child.cocci script")
CC: Sumera Priyadarsini <[email protected]>
Reported-by: kernel test robot <[email protected]>
Signed-off-by: kernel test robot <[email protected]>
Signed-off-by: Julia Lawall <[email protected]>
---

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 812da4d39463a060738008a46cfc9f775e4bfcf6
commit: 82c2d81361ecd142a54e84a9da1e287113314a4f coccinelle: iterators: Add for_each_child.cocci script
:::::: branch date: 13 hours ago
:::::: commit date: 5 months ago

overlay.c | 1 +
1 file changed, 1 insertion(+)

--- a/drivers/of/overlay.c
+++ b/drivers/of/overlay.c
@@ -796,6 +796,7 @@ static int init_overlay_changeset(struct
if (!fragment->target) {
of_node_put(fragment->overlay);
ret = -EINVAL;
+ of_node_put(node);
goto err_free_fragments;
}


2021-03-22 22:04:09

by Frank Rowand

[permalink] [raw]
Subject: Re: [PATCH] of: overlay: fix for_each_child.cocci warnings

On 3/22/21 1:21 PM, Julia Lawall wrote:
> From: kernel test robot <[email protected]>
>
> Function "for_each_child_of_node" should have of_node_put() before goto.
>
> Generated by: scripts/coccinelle/iterators/for_each_child.cocci
>
> Fixes: 82c2d81361ec ("coccinelle: iterators: Add for_each_child.cocci script")
> CC: Sumera Priyadarsini <[email protected]>
> Reported-by: kernel test robot <[email protected]>
> Signed-off-by: kernel test robot <[email protected]>
> Signed-off-by: Julia Lawall <[email protected]>
> ---
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 812da4d39463a060738008a46cfc9f775e4bfcf6
> commit: 82c2d81361ecd142a54e84a9da1e287113314a4f coccinelle: iterators: Add for_each_child.cocci script
> :::::: branch date: 13 hours ago
> :::::: commit date: 5 months ago
>
> overlay.c | 1 +
> 1 file changed, 1 insertion(+)
>
> --- a/drivers/of/overlay.c
> +++ b/drivers/of/overlay.c
> @@ -796,6 +796,7 @@ static int init_overlay_changeset(struct
> if (!fragment->target) {
> of_node_put(fragment->overlay);
> ret = -EINVAL;
> + of_node_put(node);
> goto err_free_fragments;
> }
>

Reviewed-by: Frank Rowand <[email protected]>
Tested-by: Frank Rowand <[email protected]>

While reading through the code touched by the patch I noticed that
the clean up at label err_free_fragments does not do the required
of_node_put() calls. I'll add creating a patch to fix that to my
todo list.

-Frank

2021-03-25 03:25:33

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH] of: overlay: fix for_each_child.cocci warnings

On Mon, 22 Mar 2021 19:21:39 +0100, Julia Lawall wrote:
> From: kernel test robot <[email protected]>
>
> Function "for_each_child_of_node" should have of_node_put() before goto.
>
> Generated by: scripts/coccinelle/iterators/for_each_child.cocci
>
> Fixes: 82c2d81361ec ("coccinelle: iterators: Add for_each_child.cocci script")
> CC: Sumera Priyadarsini <[email protected]>
> Reported-by: kernel test robot <[email protected]>
> Signed-off-by: kernel test robot <[email protected]>
> Signed-off-by: Julia Lawall <[email protected]>
> ---
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 812da4d39463a060738008a46cfc9f775e4bfcf6
> commit: 82c2d81361ecd142a54e84a9da1e287113314a4f coccinelle: iterators: Add for_each_child.cocci script
> :::::: branch date: 13 hours ago
> :::::: commit date: 5 months ago
>
> overlay.c | 1 +
> 1 file changed, 1 insertion(+)
>
> --- a/drivers/of/overlay.c
> +++ b/drivers/of/overlay.c
> @@ -796,6 +796,7 @@ static int init_overlay_changeset(struct
> if (!fragment->target) {
> of_node_put(fragment->overlay);
> ret = -EINVAL;
> + of_node_put(node);
> goto err_free_fragments;
> }
>
>
>

Applied, thanks!