| From 6386bbded4e3367aeda7aae2b6dd58b164e706ed Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 26 Dec 2018 08:29:02 -0500 |
| Subject: clk: socfpga: fix refcount leak |
| |
| From: Yangtao Li <tiny.windzz@gmail.com> |
| |
| [ Upstream commit 7f9705beeb3759e69165e7aff588f6488ff6c1ac ] |
| |
| 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> |
| Fixes: 5343325ff3dd ("clk: socfpga: add a clock driver for the Arria 10 platform") |
| Fixes: a30d27ed739b ("clk: socfpga: fix clock driver for 3.15") |
| Signed-off-by: Stephen Boyd <sboyd@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/clk/socfpga/clk-pll-a10.c | 1 + |
| drivers/clk/socfpga/clk-pll.c | 1 + |
| 2 files changed, 2 insertions(+) |
| |
| diff --git a/drivers/clk/socfpga/clk-pll-a10.c b/drivers/clk/socfpga/clk-pll-a10.c |
| index 35fabe1a32c30..269467e8e07e1 100644 |
| --- a/drivers/clk/socfpga/clk-pll-a10.c |
| +++ b/drivers/clk/socfpga/clk-pll-a10.c |
| @@ -95,6 +95,7 @@ static struct clk * __init __socfpga_pll_init(struct device_node *node, |
| |
| clkmgr_np = of_find_compatible_node(NULL, NULL, "altr,clk-mgr"); |
| clk_mgr_a10_base_addr = of_iomap(clkmgr_np, 0); |
| + of_node_put(clkmgr_np); |
| BUG_ON(!clk_mgr_a10_base_addr); |
| pll_clk->hw.reg = clk_mgr_a10_base_addr + reg; |
| |
| diff --git a/drivers/clk/socfpga/clk-pll.c b/drivers/clk/socfpga/clk-pll.c |
| index c7f463172e4b9..b4b44e9b59011 100644 |
| --- a/drivers/clk/socfpga/clk-pll.c |
| +++ b/drivers/clk/socfpga/clk-pll.c |
| @@ -100,6 +100,7 @@ static __init struct clk *__socfpga_pll_init(struct device_node *node, |
| |
| clkmgr_np = of_find_compatible_node(NULL, NULL, "altr,clk-mgr"); |
| clk_mgr_base_addr = of_iomap(clkmgr_np, 0); |
| + of_node_put(clkmgr_np); |
| BUG_ON(!clk_mgr_base_addr); |
| pll_clk->hw.reg = clk_mgr_base_addr + reg; |
| |
| -- |
| 2.20.1 |
| |