lkml.org 
[lkml]   [2018]   [Dec]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] csky: fix refcount leak in setup_smp()
Date
The of_find_node_by_type() 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>
---
arch/csky/kernel/smp.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/csky/kernel/smp.c b/arch/csky/kernel/smp.c
index 36ebaf9834e1..adec56df613b 100644
--- a/arch/csky/kernel/smp.c
+++ b/arch/csky/kernel/smp.c
@@ -139,11 +139,17 @@ void __init setup_smp(void)
int cpu;

while ((node = of_find_node_by_type(node, "cpu"))) {
- if (!of_device_is_available(node))
+ if (!of_device_is_available(node)) {
+ of_node_put(node);
continue;
+ }

- if (of_property_read_u32(node, "reg", &cpu))
+ if (of_property_read_u32(node, "reg", &cpu)) {
+ of_node_put(node);
continue;
+ }
+
+ of_node_put(node);

if (cpu >= NR_CPUS)
continue;
--
2.17.0
\
 
 \ /
  Last update: 2018-12-27 17:28    [W:0.046 / U:2.940 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site