On Mon, Feb 14, 2005 at 11:58:38AM -0800, Roland Dreier wrote:
>     Jeff> * pci_request_regions() should be axiomatic.  By that I mean,
>     Jeff> pci_enable_device() should
>     Jeff>     (a) handle pci_request_regions() completely
>     Jeff>     (b) fail if regions are not available
> 
> There's one pitfall here: for a device using MSI-X, the MSI-X table is
> going to be somewhere in one of the device's BARs.  When the device
> driver does pci_enable_msix(), drivers/pci/msi.c will do
> request_region() on this table.  If the device driver has already done
> pci_request_regions(), then this will fail and the driver won't be
> able to use MSI-X.  The current solution is for the driver to avoid
> requesting the whole BAR where the MSI-X table is.


That's an MSI bug.

A current PCI driver -should- be using pci_request_regions().

        Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to