Commit da51ceda authored by Nishka Dasgupta's avatar Nishka Dasgupta Committed by Geert Uytterhoeven

soc: renesas: rcar-sysc: Add goto to of_node_put() before return

The local variable np in function rcar_sysc_pd_init takes the return
value of of_find_matching_node_and_match(), which gets a node but does
not put it.  If np is not put before the function returns, it may cause
a memory leak.

Hence, remove the return statement that does not immediately follow a
putting of np.  Replace it with a goto pointing to a pre-existing label
that first puts np and then returns the required value.

Issue found with Coccinelle.

Fixes: afa6f53d ("soc: renesas: rcar-sysc: Add support for fixing up power area tables")
Signed-off-by: default avatarNishka Dasgupta <nishkadg.linux@gmail.com>
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
parent 0ed0eb01
...@@ -346,7 +346,7 @@ static int __init rcar_sysc_pd_init(void) ...@@ -346,7 +346,7 @@ static int __init rcar_sysc_pd_init(void)
if (info->init) { if (info->init) {
error = info->init(); error = info->init();
if (error) if (error)
return error; goto out_put;
} }
has_cpg_mstp = of_find_compatible_node(NULL, NULL, has_cpg_mstp = of_find_compatible_node(NULL, NULL,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment