OSDN Git Service

irqchip/loongson-liointc: Fix an error handling path in liointc_init()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Mon, 1 Aug 2022 19:28:07 +0000 (21:28 +0200)
committerMarc Zyngier <maz@kernel.org>
Fri, 12 Aug 2022 12:47:21 +0000 (13:47 +0100)
All errors lead to the error handling path, except the one dealing
with "reg-names" in DT.

Fix it and release some resources before returning if this test fails.

Fixes: 0858ed035a85 ("irqchip/loongson-liointc: Add ACPI init support")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
[maz: fix commit message]
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/1a6d74ab70712279023aa7bdbd31bd3aec103bc0.1659382063.git.christophe.jaillet@wanadoo.fr
drivers/irqchip/irq-loongson-liointc.c

index acd1a4b..0da8716 100644 (file)
@@ -207,7 +207,7 @@ static int liointc_init(phys_addr_t addr, unsigned long size, int revision,
                                        "reg-names", core_reg_names[i]);
 
                        if (index < 0)
-                               return -EINVAL;
+                               goto out_iounmap;
 
                        priv->core_isr[i] = of_iomap(node, index);
                }