Re: [PATCH] irqchip/loongson-liointc: Fix an error handling path in liointc_init()

From: WANG Xuerui
Date: Tue May 24 2022 - 01:41:27 EST


Hi Huacai,

On 5/24/22 11:47, Huacai Chen wrote:
Hi, Christophe,

On Tue, May 24, 2022 at 10:50 AM Huacai Chen <chenhuacai@xxxxxxxxxx> wrote:
Hi, Christophe,

On Sun, May 22, 2022 at 9:44 PM Christophe JAILLET
<christophe.jaillet@xxxxxxxxxx> wrote:
If a of_property_match_string() call fails, we still need to release some
resources.
Add the corresponding goto instead of a direct return.
Your patch is correct, but 807e93d0ecbb hasn't been upstream, I don't
know how to handle it.

Huacai
Fixes: 807e93d0ecbb ("irqchip/loongson-liointc: Add ACPI init support")
Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
---
drivers/irqchip/irq-loongson-liointc.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/irqchip/irq-loongson-liointc.c b/drivers/irqchip/irq-loongson-liointc.c
index ff3cb5b05710..2227b702a81d 100644
--- a/drivers/irqchip/irq-loongson-liointc.c
+++ b/drivers/irqchip/irq-loongson-liointc.c
@@ -185,8 +185,10 @@ static int liointc_init(phys_addr_t addr, unsigned long size, int revision,
int index = of_property_match_string(node,
"reg-names", core_reg_names[i]);

- if (index < 0)
- return -EINVAL;
+ if (index < 0) {
+ err = -EINVAL;
+ goto out_iounmap;
+ }
Just goto out_iounmap is OK, because it returns -EINVAL at last.
I've squash your patch to the original one and add a Co-developed-by:,
not sure it is the best solution. Thanks.
You could also "Reported-by" and/or "Suggested-by", to give proper credit. Mention of this mail thread (link to lore.kernel.org archive maybe) in the commit message is good too.

Huacai
priv->core_isr[i] = of_iomap(node, index);
}
--
2.34.1