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

From: Mike Habeck
Date: Wed Jun 09 2010 - 10:23:53 EST

Jesse Barnes wrote:
On Tue, 08 Jun 2010 17:53:19 -0700
"H. Peter Anvin" <hpa@xxxxxxxxx> wrote:

On 06/02/2010 08:53 AM, Jesse Barnes wrote:
That's what I thought, which I guess means my original question to Mike still stands...
I thought the whole reason for this was hotplug; we don't want to
exhaust I/O space unnecessarily by allocating resources for BARs the
BIOS didn't assign so we can keep them around for later hotplug

If there's some other issue, it's not too late to drop this patch.

Okay, now... this means that if a device that the BIOS doesn't know
about, but which needs I/O addresses, then it will work if hotplugged,
but not if it is plugged in on system boot?

Depends on the BIOS interactions on this platform; if the kernel ends
up doing all the allocations itself, we'll allocate space for every BAR
unconditionally, meaning that any hotplugged device should work.

Correct, our BIOS allocates I/O space for all devices except for a
few that it knows don't use it. On a hotplug attach the kernel
will be unconditionally allocating the I/O space for all devices..
The pci=nobar option strictly prevents the kernel from allocating
BAR resources to device BARs that the BIOS didn't assign (similar
to how the pci=norom option works for the device's ROM BAR)

But really the SGI guys should comment here.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at