[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250915135201.187119-1-haoxiang_li2024@163.com>
Date: Mon, 15 Sep 2025 21:52:01 +0800
From: Haoxiang Li <haoxiang_li2024@....com>
To: davem@...emloft.net,
andreas@...sler.com,
haoxiang_li2024@....com
Cc: linux-kernel@...r.kernel.org,
stable@...r.kernel.org
Subject: [PATCH] sparc: Fix a reference leak in central_build_irq()
Call put_device() once central_op is no longer needed, preventing
a reference leak.
Fixes: 5fce09c6f636 ("sparc: Move irq_trans_init() and support code into seperate file.")
Cc: stable@...r.kernel.org
Signed-off-by: Haoxiang Li <haoxiang_li2024@....com>
---
arch/sparc/kernel/prom_irqtrans.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/sparc/kernel/prom_irqtrans.c b/arch/sparc/kernel/prom_irqtrans.c
index 5752bfd73ac0..4cfc27131caa 100644
--- a/arch/sparc/kernel/prom_irqtrans.c
+++ b/arch/sparc/kernel/prom_irqtrans.c
@@ -733,6 +733,7 @@ static unsigned int central_build_irq(struct device_node *dp,
} else if (of_node_name_eq(dp, "clock-board")) {
res = ¢ral_op->resource[3];
} else {
+ put_device(¢ral_op->dev);
return ino;
}
@@ -747,6 +748,7 @@ static unsigned int central_build_irq(struct device_node *dp,
tmp &= ~0x80000000;
upa_writel(tmp, imap);
+ put_device(¢ral_op->dev);
return build_irq(0, iclr, imap);
}
--
2.25.1
Powered by blists - more mailing lists