Re: [patch] x64: Avoid irq_chip mask/unmask in fixup_irqs for interrupt-remapping

Suresh Siddha
2009-06-05T01:22:18Z

On Thu, 2009-06-04 at 18:18 -0700, Suresh Siddha wrote:
> On Thu, 2009-06-04 at 16:13 -0700, Eric W. Biederman wrote:
> > Suresh Siddha <suresh.b.siddha@intel.com> writes:
> >
> > > From: Suresh Siddha <suresh.b.siddha@intel.com>
> > > Subject: x64: Avoid irq_chip mask/unmask in fixup_irqs for interrupt-remapping
> > >
> > > In the presence of interrupt-remapping, irqs will be migrated in the
> > > process context and we don't do (and there is no need to) irq_chip mask/unmask
> > > while migrating the interrupt.
> > >
> > > Similarly fix the fixup_irqs() that get called during cpu offline and avoid
> > > calling irq_chip mask/unmask for irqs that are ok to be migrated in the
> > > process context.
> > >
> > > While we didn't observe any race condition with the existing code,
> > > this change takes complete advantage of interrupt-remapping in
> > > the newer generation platforms and avoids any potential HW lockup's
> > > (that often worry Eric :)
> >
> > You now apparently fail to migrate the irq threads in tandem with
> > the rest of the irqs.
>
> Eric, Are you referring to Gary's issues? As far as I understand, they
> don't happen in the presence of interrupt-remapping.
>
> Can you ack this patch, as this avoid touching IO-APIC and MSI entries
> and does fixup_irqs() in a much more reliable fashion.

in the presence of interrupt-remapping ofcourse :)

>
> I haven't followed Gary's couple of patches related to non
> interrupt-remapping case. I will go through them and see how I can help
> there.
>
> thanks,
> suresh