Messages in this thread | | | From | Antoine Tenart <> | Subject | Re: [PATCH] irqchip/alpine-msi: Fix freeing of interrupts on allocation error path | Date | Mon, 30 Nov 2020 09:58:43 +0100 |
| |
Hello Marc,
Quoting Marc Zyngier (2020-11-29 14:55:25) > The alpine-msi driver has an interesting allocation error handling, > where it frees the same interrupts repeatedly. Hilarity follows.
That's interesting indeed...
> This code is probably never executed, but let's fix it nonetheless. > > Fixes: e6b78f2c3e14 ("irqchip: Add the Alpine MSIX interrupt controller") > Cc: Tsahee Zidenberg <tsahee@annapurnalabs.com> > Cc: Antoine Tenart <atenart@kernel.org> > Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Antoine Tenart <atenart@kernel.org>
Thanks, Antoine
> --- > drivers/irqchip/irq-alpine-msi.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/irqchip/irq-alpine-msi.c b/drivers/irqchip/irq-alpine-msi.c > index 23a3b877f7f1..ede02dc2bcd0 100644 > --- a/drivers/irqchip/irq-alpine-msi.c > +++ b/drivers/irqchip/irq-alpine-msi.c > @@ -165,8 +165,7 @@ static int alpine_msix_middle_domain_alloc(struct irq_domain *domain, > return 0; > > err_sgi: > - while (--i >= 0) > - irq_domain_free_irqs_parent(domain, virq, i); > + irq_domain_free_irqs_parent(domain, virq, i - 1); > alpine_msix_free_sgi(priv, sgi, nr_irqs); > return err; > } > -- > 2.29.2 >
| |