On Mon, 1 Jul 2019, Peter Zijlstra wrote:

> On Fri, Jun 28, 2019 at 01:11:51PM +0200, Thomas Gleixner wrote:
> > But that does not catch the case where the interrupt is on flight at the
> > hardware level but not yet serviced by the target CPU. That creates an
> > interesing race condition:
> 
> > + * It does not check whether there is an interrupt on flight at the
> > + * hardware level, but not serviced yet, as this might deadlock when
> > + * called with interrupts disabled and the target CPU of the interrupt
> > + * is the current CPU.
> 
> > +   /*
> > +    * Make sure it's not being used on another CPU and if the chip
> > +    * supports it also make sure that there is no (not yet serviced)
> > +    * interrupt on flight at the hardware level.
> > +    */
> > +   __synchronize_hardirq(desc, true);
> 
> s/on flight/in flight/ ?

yes

Reply via email to