Re: [PATCH] x86/PCI: coalesce overlapping host bridge windows

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.

Applied to my for-linus branch, thanks.

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


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux