[PATCH] x86, olpc: Avoid leak OF node on error

From: cgel . zte
Date: Mon May 23 2022 - 07:13:06 EST


From: Minghao Chi <chi.minghao@xxxxxxxxxx>

The OF node should be put before returning error in xo1_rtc_init(),
otherwise node's refcount will be leaked.

Reported-by: Zeal Robot <zealci@xxxxxxxxxx>
Signed-off-by: Minghao Chi <chi.minghao@xxxxxxxxxx>
---
arch/x86/platform/olpc/olpc-xo1-rtc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/platform/olpc/olpc-xo1-rtc.c b/arch/x86/platform/olpc/olpc-xo1-rtc.c
index 57f210cda761..dc5ac56cd9dd 100644
--- a/arch/x86/platform/olpc/olpc-xo1-rtc.c
+++ b/arch/x86/platform/olpc/olpc-xo1-rtc.c
@@ -59,9 +59,9 @@ static int __init xo1_rtc_init(void)
struct device_node *node;

node = of_find_compatible_node(NULL, NULL, "olpc,xo1-rtc");
+ of_node_put(node);
if (!node)
return 0;
- of_node_put(node);

pr_info("olpc-xo1-rtc: Initializing OLPC XO-1 RTC\n");
rdmsrl(MSR_RTC_DOMA_OFFSET, rtc_info.rtc_day_alarm);
--
2.25.1