Messages in this thread | | | Date | Fri, 28 Jun 2019 11:28:22 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [patch 1/5] genirq: Delay deactivation in free_irq() |
| |
Marc,
On Fri, 28 Jun 2019, Marc Zyngier wrote: > > --- a/kernel/irq/autoprobe.c > > +++ b/kernel/irq/autoprobe.c > > @@ -1699,6 +1700,7 @@ static struct irqaction *__free_irq(stru > > /* If this was the last handler, shut down the IRQ line: */ > > if (!desc->action) { > > irq_settings_clr_disable_unlazy(desc); > > + /* Only shutdown. Deactivate after synchronize_irq() */ > > synchronize_hardirq()
Correct.
> > > > irq_release_resources(desc); > The patch makes complete sense, so this comment is only a nit, feel free > to ignore me: I find it a bit odd that irq_shutdown() doesn't do the > full thing anymore, given that it is the "canonical" function, and that > __free_irq is the only one that has special needs. Suggestion below.
We have pretty much the same thing with startup, so I made it symmetric.
> Irrespective of which version you prefer: > > Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Thanks for looking into this!
tglx
| |