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.win...@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