On Fri, Aug 20, 2021 at 5:37 PM Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote: > > Commit 698b8eeaed72 ("gpio/mpc8xxx: change irq handler from chained to normal") > has introduced a new 'goto err;' at the very end of the function, but has > not updated the error handling path accordingly. > > Add the now missing 'irq_domain_remove()' call which balances a previous > 'irq_domain_create_linear() call. > > Fixes: 698b8eeaed72 ("gpio/mpc8xxx: change irq handler from chained to normal") > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> > --- > Is the 'irq_set_chained_handler_and_data()' of the remove function also > needed here? > --- > drivers/gpio/gpio-mpc8xxx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c > index 67dc38976ab6..241bcc80612e 100644 > --- a/drivers/gpio/gpio-mpc8xxx.c > +++ b/drivers/gpio/gpio-mpc8xxx.c > @@ -416,6 +416,8 @@ static int mpc8xxx_probe(struct platform_device *pdev) > > return 0; > err: > + if (mpc8xxx_gc->irq) > + irq_domain_remove(mpc8xxx_gc->irq); > iounmap(mpc8xxx_gc->regs); > return ret; > } > -- > 2.30.2 > Applied, thanks! Bart