[PATCH 5.15 113/135] xtensa: Fix refcount leak bug in time.c

From: Greg Kroah-Hartman
Date: Mon Jun 27 2022 - 07:44:09 EST


From: Liang He <windhl@xxxxxxx>

commit a0117dc956429f2ede17b323046e1968d1849150 upstream.

In calibrate_ccount(), of_find_compatible_node() will return a node
pointer with refcount incremented. We should use of_node_put() when
it is not used anymore.

Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Liang He <windhl@xxxxxxx>
Message-Id: <20220617124432.4049006-1-windhl@xxxxxxx>
Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
arch/xtensa/kernel/time.c | 1 +
1 file changed, 1 insertion(+)

--- a/arch/xtensa/kernel/time.c
+++ b/arch/xtensa/kernel/time.c
@@ -154,6 +154,7 @@ static void __init calibrate_ccount(void
cpu = of_find_compatible_node(NULL, NULL, "cdns,xtensa-cpu");
if (cpu) {
clk = of_clk_get(cpu, 0);
+ of_node_put(cpu);
if (!IS_ERR(clk)) {
ccount_freq = clk_get_rate(clk);
return;