Re: [Patch 1/1] x86 pci: Add option to not assign BAR's if not alreadyassigned

From: Yinghai Lu
Date: Thu May 13 2010 - 16:33:54 EST


On 05/13/2010 12:38 PM, Mike Habeck wrote:
>
>
> Nothing really breaks, it's more of a problem that the kernel uses
> up the rest of the I/O Space, and starts spitting out warning
> messages as it tries to assign the rest of the I/O BARs that the
> BIOS didn't assign, something like:
>
> pci 0010:03:00.0: BAR 5: can't allocate I/O resource [0x0-0x7f]
> pci 0012:05:00.0: BAR 5: can't allocate I/O resource [0x0-0x7f]
> ...
>
> And in using up all the I/O space, I think that could prevent a
> hotplug attach of a pci device requiring I/O space (although I
> believe most BIOSes pad the bridge decoders to support that).
> I'm not to familiar with how pci hotplug works on x86 so I may
> be wrong in what I just stated.

assume you have several IOHs on your system, and for hotplug support,
BIOS is supposed to balance the IO ioport range allocation
between IOHs.

mmio range should be much better, it could use mmio64

if your BIOS can not provide right _CRS for peer root buses, some
devices may get wrong allocation from kernel.
or BIOS set small BAR in the bridge, that could cause problem too.

YH


--
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/