Re: [PATCH] PCI MSI: allow alignment restrictions on vector allocation

From: Thomas Gleixner
Date: Tue Oct 03 2017 - 17:46:34 EST


On Tue, 3 Oct 2017, Bjorn Helgaas wrote:
> On Tue, Oct 03, 2017 at 11:07:58PM +0200, Thomas Gleixner wrote:
> > On Mon, 2 Oct 2017, Thomas Gleixner wrote:
> > > On Mon, 2 Oct 2017, Thomas Gleixner wrote:
> > > > On Mon, 2 Oct 2017, Daniel Drake wrote:
> > > > 2) The affinity setting of straight MSI interrupts (w/o remapping) on x86
> > > > requires to make the affinity change from the interrupt context of the
> > > > current active vector in order not to lose interrupts or worst case
> > > > getting into a stale state.
> > > >
> > > > That works for single vectors, but trying to move all vectors in one
> > > > go is more or less impossible, as there is no reliable way to
> > > > determine that none of the other vectors is on flight.
> > > >
> > > > There might be some 'workarounds' for that, but I rather avoid that
> > > > unless we get an official documented one from Intel/AMD.
> > >
> > > Thinking more about it. That might be actually a non issue for MSI, but we
> > > have that modus operandi in the current code and we need to address that
> > > first before even thinking about multi MSI support.
> >
> > But even if its possible, it's very debatable whether it's worth the effort
> > when this driver just can use the legacy INTx.and be done with it.
>
> Daniel said "Legacy interrupts do not work on that module, so MSI
> support is required," so I assume he means INTx doesn't work. Maybe

Hmm, I missed that detail obviously.

> the driver could poll? I don't know how much slower that would be,
> but at least it would penalize the broken device, not everybody.

That would definitely be prefered.

Thanks,

tglx