diff options
author | Miaoqian Lin <linmq006@gmail.com> | 2022-05-12 15:59:08 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-06-14 18:11:43 +0200 |
commit | 8db59df7f5826e104db82cfddbf22a33a151193e (patch) | |
tree | c1bfa9a8181d39294b8875211e81738e851ad888 | |
parent | dcc00106c3259acb22d9cd309e56022dd860b844 (diff) | |
download | linux-stable-8db59df7f5826e104db82cfddbf22a33a151193e.tar.gz linux-stable-8db59df7f5826e104db82cfddbf22a33a151193e.tar.bz2 linux-stable-8db59df7f5826e104db82cfddbf22a33a151193e.zip |
video: fbdev: clcdfb: Fix refcount leak in clcdfb_of_vram_setup
[ Upstream commit b23789a59fa6f00e98a319291819f91fbba0deb8 ]
of_parse_phandle() returns a node pointer with refcount incremented, we should
use of_node_put() on it when not need anymore. Add missing of_node_put() to
avoid refcount leak.
Fixes: d10715be03bd ("video: ARM CLCD: Add DT support")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | drivers/video/fbdev/amba-clcd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/video/fbdev/amba-clcd.c b/drivers/video/fbdev/amba-clcd.c index 7de43be6ef2c..3b7a7c74bf0a 100644 --- a/drivers/video/fbdev/amba-clcd.c +++ b/drivers/video/fbdev/amba-clcd.c @@ -774,12 +774,15 @@ static int clcdfb_of_vram_setup(struct clcd_fb *fb) return -ENODEV; fb->fb.screen_base = of_iomap(memory, 0); - if (!fb->fb.screen_base) + if (!fb->fb.screen_base) { + of_node_put(memory); return -ENOMEM; + } fb->fb.fix.smem_start = of_translate_address(memory, of_get_address(memory, 0, &size, NULL)); fb->fb.fix.smem_len = size; + of_node_put(memory); return 0; } |