clk: dove: fix refcount leak in dove_clk_init()
authorYangtao Li <tiny.windzz@gmail.com>
Wed, 26 Dec 2018 13:50:13 +0000 (08:50 -0500)
committerStephen Boyd <sboyd@kernel.org>
Fri, 28 Dec 2018 19:45:43 +0000 (11:45 -0800)
The of_find_compatible_node() returns a node pointer with refcount
incremented, but there is the lack of use of the of_node_put() when
done. Add the missing of_node_put() to release the refcount.

Signed-off-by: Yangtao Li <tiny.windzz@gmail.com>
Reviewed-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Fixes: 8f7fc5450b64 ("clk: mvebu: dove: maintain clock init order")
Fixes: 63b8d92c793f ("clk: add Dove PLL divider support for GPU, VMeta and AXI clocks")
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/mvebu/dove.c

index e0dd99f..0bd09d3 100644 (file)
@@ -188,10 +188,14 @@ static void __init dove_clk_init(struct device_node *np)
 
        mvebu_coreclk_setup(np, &dove_coreclks);
 
-       if (ddnp)
+       if (ddnp) {
                dove_divider_clk_init(ddnp);
+               of_node_put(ddnp);
+       }
 
-       if (cgnp)
+       if (cgnp) {
                mvebu_clk_gating_setup(cgnp, dove_gating_desc);
+               of_node_put(cgnp);
+       }
 }
 CLK_OF_DECLARE(dove_clk, "marvell,dove-core-clock", dove_clk_init);