[PATCH] sparc: kernel: Fix refcount bug in irq_64.c

From: Liang He
Date: Sun Jun 19 2022 - 02:22:42 EST


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

Signed-off-by: Liang He <windhl@xxxxxxx>
---
arch/sparc/kernel/irq_64.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
index c8848bb681a1..84abfe584a08 100644
--- a/arch/sparc/kernel/irq_64.c
+++ b/arch/sparc/kernel/irq_64.c
@@ -909,12 +909,13 @@ static u64 prom_limit0, prom_limit1;

static void map_prom_timers(void)
{
- struct device_node *dp;
+ struct device_node *dp, *tp;
const unsigned int *addr;

/* PROM timer node hangs out in the top level of device siblings... */
- dp = of_find_node_by_path("/");
- dp = dp->child;
+ tp = of_find_node_by_path("/");
+ dp = tp->child;
+ of_node_put(tp);
while (dp) {
if (of_node_name_eq(dp, "counter-timer"))
break;
--
2.25.1