[PATCH 4.9 062/164] of: fix "/cpus" reference leak in of_numa_parse_cpu_nodes()
From: Greg Kroah-Hartman
Date: Tue May 23 2017 - 16:29:50 EST
4.9-stable review patch. If anyone has any objections, please let me know.
------------------
From: Tyrel Datwyler <tyreld@xxxxxxxxxxxxxxxxxx>
commit b8475cbee5ab2eac05f9cd5dbcc94c453d3cbf10 upstream.
The call to of_find_node_by_path("/cpus") returns the cpus device_node
with its reference count incremented. There is no matching of_node_put()
call in of_numa_parse_cpu_nodes() which results in a leaked reference
to the "/cpus" node.
This patch adds an of_node_put() to release the reference.
fixes: 298535c00a2c ("of, numa: Add NUMA of binding implementation.")
Signed-off-by: Tyrel Datwyler <tyreld@xxxxxxxxxxxxxxxxxx>
Acked-by: David Daney <david.daney@xxxxxxxxxx>
Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
drivers/of/of_numa.c | 2 ++
1 file changed, 2 insertions(+)
--- a/drivers/of/of_numa.c
+++ b/drivers/of/of_numa.c
@@ -57,6 +57,8 @@ static void __init of_numa_parse_cpu_nod
else
node_set(nid, numa_nodes_parsed);
}
+
+ of_node_put(cpus);
}
static int __init of_numa_parse_memory_nodes(void)