Re: [PATCH] x86 PCI: Do not use interrupt links for devices using MSI-X

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday, January 7, 2009 5:13 am Ingo Molnar wrote:
> * Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> wrote:
> > On Monday, January 5, 2009 5:04 am Ingo Molnar wrote:
> > > * Rafael J. Wysocki <rjw@xxxxxxx> wrote:
> > > > From: Rafael J. Wysocki <rjw@xxxxxxx>
> > > >
> > > > pcibios_enable_device() and pcibios_disable_device() don't handle
> > > > IRQs for devices that have MSI enabled and it should tread the
> > >
> > > s/tread/treat
> > >
> > > > devices with MSI-X enabled in the same way.
> > > >
> > > > Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>
> > > > ---
> > > >  arch/x86/pci/common.c |    4 ++--
> > > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > looks good - Jesse, what do you think?
> >
> > Yeah, seems obviously correct, I'll queue it up.
> >
> > > Rafael, i'm curious is this in response to some regression/bug? Did
> > > some box or driver get confused by us enabling/disabling the GSI? Some
> > > IRQ flood perhaps?
> > >
> > > btw., there's a small observation:
> > > > +     if (!dev->msi_enabled && !dev->msix_enabled)
> > >
> > > maybe a "pci_has_gsi_irq()" wrapper would make these checks cleaner and
> > > would make things more robust, should there be any new IRQ delivery
> > > method be introduced in the future?
> >
> > pci_has_msi_irq surely?  Otherwise we'll catch pretty much everything? 
> > Or did you mean !pci_has_gsi_irq() here instead?
>
> Well - here the check is: "if (not MSI or MSIX)" in essence. I thought
> that it might be confusing to call it _msi() as well, so we could approach
> it via the inverse space: general system interrupts (GSIs) - which are
> device irqs that are neither MSI nor MSIX.
>
> But if pci_has_msi_irq() can cleanly include the MSIX portion too, that's
> fine too. (MSI-X is really MSI with wider eventing capabilities but
> otherwise non-GSI just as much - and we dont want to enable (or even
> touch) the legacy IRQ line registers for any of them, even if they happen
> to be enumerated)
>
> Right?

Right, I see where you're coming from.  However, I've queued up Rafael's last 
patch with some fixes for dev vs. pci_dev and a name collision 
(pci_msi_enabled -> pci_dev_msi_enabled).  Bjorn caught the fact that some 
other arches may want similar treatment too, I think Rafael is checking that 
out.

-- 
Jesse Barnes, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux