Messages in this thread | | | Date | Tue, 24 May 2022 07:36:59 +0200 | Subject | Re: [PATCH] irqchip/loongson-liointc: Fix an error handling path in liointc_init() | From | Christophe JAILLET <> |
| |
Le 24/05/2022 à 05:47, Huacai Chen a écrit : > Hi, Christophe, > > On Tue, May 24, 2022 at 10:50 AM Huacai Chen <chenhuacai@kernel.org> wrote: >> >> Hi, Christophe, >> >> On Sun, May 22, 2022 at 9:44 PM Christophe JAILLET >> <christophe.jaillet@wanadoo.fr> 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@wanadoo.fr> >>> --- >>> 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.
Yes, agreed.
> I've squash your patch to the original one and add a Co-developed-by:, > not sure it is the best solution. Thanks.
Squashing in the original patch is fine for me. It is what is usually done in such cases.
The Co-developed-by: is maybe a bit to much. I've just fixed a bug that can't happen (IMHO) in real life. I'll let you decide what is more relevant. With or without the tag is fine for me as well.
CJ
> > Huacai >>> >>> priv->core_isr[i] = of_iomap(node, index); >>> } >>> -- >>> 2.34.1 >>> >
| |