Re: AMD 8131 MSI quirk called too late, bus_flags not inherited ?

From: Greg KH
Date: Tue May 23 2006 - 00:44:19 EST


On Sun, May 21, 2006 at 03:24:07PM +0200, Brice Goglin wrote:
> Michael S. Tsirkin wrote:
> >> @@ -925,8 +926,9 @@
> >> if (dev->no_msi)
> >> return status;
> >>
> >> - if (dev->bus->bus_flags & PCI_BUS_FLAGS_NO_MSI)
> >> - return -EINVAL;
> >> + for (bus = dev->bus; bus; bus = bus->parent)
> >> + if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI)
> >> + return -EINVAL;
> >>
> >> temp = dev->irq;
> >>
> >
> > It seems we must add this loop to pci_enable_msix as well.
> >
>
> Right, thanks. Greg, what do you think of putting the attached patch in
> 2.6.17 ?

Ok, does everyone agree that this patch fixes the issues for them? I've
had a few other private emails saying that the current code doesn't work
properly and hadn't been able to determine what was happening. Thanks
for these patches.

> By the way, do we need to check dev->no_msi in pci_enable_msix() too ?

Yes, good catch, care to respin the patch and give it a good changelog
entry?

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/