summaryrefslogtreecommitdiffstats
path: root/drivers/irqchip
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2022-11-15 09:25:32 +0000
committerMarc Zyngier <maz@kernel.org>2022-11-26 13:29:48 +0000
commit4208d4faf36573a507b5e5de17abe342e9276759 (patch)
tree9ba351ad99ba12348620810f7277dd6390aa16ce /drivers/irqchip
parent4e08a286b1f7a0a32828d6411255296e4ef51fa6 (diff)
downloadlinux-4208d4faf36573a507b5e5de17abe342e9276759.tar.bz2
irqchip/wpcm450: Fix memory leak in wpcm450_aic_of_init()
If of_iomap() failed, 'aic' should be freed before return. Otherwise there is a memory leak. Fixes: fead4dd49663 ("irqchip: Add driver for WPCM450 interrupt controller") Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Reviewed-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Signed-off-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20221115092532.1704032-1-weiyongjun@huaweicloud.com
Diffstat (limited to 'drivers/irqchip')
-rw-r--r--drivers/irqchip/irq-wpcm450-aic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/irqchip/irq-wpcm450-aic.c b/drivers/irqchip/irq-wpcm450-aic.c
index 0dcbeb1a05a1..91df62a64cd9 100644
--- a/drivers/irqchip/irq-wpcm450-aic.c
+++ b/drivers/irqchip/irq-wpcm450-aic.c
@@ -146,6 +146,7 @@ static int __init wpcm450_aic_of_init(struct device_node *node,
aic->regs = of_iomap(node, 0);
if (!aic->regs) {
pr_err("Failed to map WPCM450 AIC registers\n");
+ kfree(aic);
return -ENOMEM;
}