On Wed, 22 Sep 2010 11:09:19 -0600 Bjorn Helgaas <bjorn.helgaas@xxxxxx> wrote: > > Some BIOSes provide PCI host bridge windows that overlap, e.g., > > pci_root PNP0A03:00: host bridge window [mem 0xb0000000-0xffffffff] > pci_root PNP0A03:00: host bridge window [mem 0xafffffff-0xdfffffff] > pci_root PNP0A03:00: host bridge window [mem 0xf0000000-0xffffffff] > > If we simply insert these as children of iomem_resource, the second window > fails because it conflicts with the first, and the third is inserted as a > child of the first, i.e., > > b0000000-ffffffff PCI Bus 0000:00 > f0000000-ffffffff PCI Bus 0000:00 > > When we claim PCI device resources, this can cause collisions like this > if we put them in the first window: > > pci 0000:00:01.0: address space collision: [mem 0xff300000-0xff4fffff] conflicts with PCI Bus 0000:00 [mem 0xf0000000-0xffffffff] > > Host bridge windows are top-level resources by definition, so it doesn't > make sense to make the third window a child of the first. This patch > coalesces any host bridge windows that overlap. For the example above, > the result is this single window: > > pci_root PNP0A03:00: host bridge window [mem 0xafffffff-0xffffffff] > > This fixes a 2.6.34 regression. Also applied, same comment as before applies here. -- 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