sparclinux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arch: fix resource leak in chmc.c
@ 2025-07-18  9:22 Jacky Liu
  2025-07-18 13:25 ` Krzysztof Kozlowski
  2025-07-18 13:43 ` [PATCH] " Markus Elfring
  0 siblings, 2 replies; 10+ messages in thread
From: Jacky Liu @ 2025-07-18  9:22 UTC (permalink / raw)
  To: davem; +Cc: andreas, 1972843537, sparclinux, linux-kernel

From: Siyang Liu <1972843537@qq.com>

In the jbusmc_probe function, the device node mem_node fetched 
via of_find_node_by_path("/memory") is not properly freed 
on all code paths. 
This can lead to leakage of device node reference counts, 
which may result in kernel resources not being released.

This issue was detected by rule based static tools 
developed by Tencent.

Signed-off-by: Siyang Liu <1972843537@qq.com>
---
 arch/sparc/kernel/chmc.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/sparc/kernel/chmc.c b/arch/sparc/kernel/chmc.c
index d4c74d6b2e1b..a7040ee7e5bc 100644
--- a/arch/sparc/kernel/chmc.c
+++ b/arch/sparc/kernel/chmc.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2001, 2007, 2008 David S. Miller (davem@davemloft.net)
  */
 
+#include <linux/cleanup.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
@@ -397,14 +398,14 @@ static void jbusmc_construct_dimm_groups(struct jbusmc *p,
 static int jbusmc_probe(struct platform_device *op)
 {
 	const struct linux_prom64_registers *mem_regs;
-	struct device_node *mem_node;
+	struct device_node *mem_node __free(device_node) =
+			of_find_node_by_path("/memory");
 	int err, len, num_mem_regs;
 	struct jbusmc *p;
 	const u32 *prop;
 	const void *ml;
 
 	err = -ENODEV;
-	mem_node = of_find_node_by_path("/memory");
 	if (!mem_node) {
 		printk(KERN_ERR PFX "Cannot find /memory node.\n");
 		goto out;
-- 
2.43.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-07-22  6:22 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-18  9:22 [PATCH] arch: fix resource leak in chmc.c Jacky Liu
2025-07-18 13:25 ` Krzysztof Kozlowski
2025-07-21  2:04   ` jackysliu
2025-07-18 13:43 ` [PATCH] " Markus Elfring
2025-07-21  3:57   ` [PATCH v2] arch: fix resource leak in jbusmc_probe() jackysliu
2025-07-21  7:18     ` Markus Elfring
2025-07-21  7:55       ` [PATCH v3] sparc: " jackysliu
2025-07-21  8:17         ` Markus Elfring
2025-07-22  6:22         ` Krzysztof Kozlowski
2025-07-21  8:25     ` [PATCH v2] arch: " Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).