On Wed, Jun 6, 2012 at 2:44 AM, Steven Newbury <steve@xxxxxxxxxxxxxxx> wrote: > On Tue, 5 Jun 2012, 06:04:57 BST, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: >> > Linux has a long history of allocating bottom-up. Windows has a long >> > history of allocating top-down. You're proposing a third alternative, >> > allocating bottom-up starting at 4GB for 64-bit BARs. If we change >> > this area, I would prefer something that follows Windows because I >> > think it will be closer to what's been tested by Windows. Do you >> > think your alternative is better? >> >> hope we can figure out how windows is making it work. >> >> Steve, Can you check if Windows is working with your test case ? >> >> If it works, we may try do the same thing from Linux, so you will not >> need to append "pci=nocrs pci=alloc_high"... >> > Unfortunately I don't have a 64 bit version of Windows to test with. Vista(32 bit) fails to even boot when docked, hot-plugging fails to allocate resources, but at least doesn't crash. > > From what I've read about the (64 bit) Windows allocation stragegy it's closer to Yinghai's method than the Linux default, preferring 64 bit resources (>4G) when possible. I'll try to find the specification document again. Here's the host bridge info from the BIOS (from https://bugzilla.kernel.org/show_bug.cgi?id=10461 attachment https://bugzilla.kernel.org/attachment.cgi?id=72869): ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] pci_root PNP0A03:00: host bridge window [io 0x0d00-0xffff] pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000dffff] pci_root PNP0A03:00: host bridge window [mem 0xe0000000-0xf7ffffff] pci_root PNP0A03:00: host bridge window [mem 0xfc000000-0xfebfffff] pci_root PNP0A03:00: host bridge window [mem 0xfec10000-0xfecfffff] pci_root PNP0A03:00: host bridge window [mem 0xfed1c000-0xfed1ffff] pci_root PNP0A03:00: host bridge window [mem 0xfed90000-0xfed9ffff] pci_root PNP0A03:00: host bridge window [mem 0xfed40000-0xfed44fff] pci_root PNP0A03:00: host bridge window [mem 0xfeda7000-0xfedfffff] pci_root PNP0A03:00: host bridge window [mem 0xfee10000-0xff9fffff] pci_root PNP0A03:00: host bridge window [mem 0xffc00000-0xffdfffff] There's no aperture above 4GB. So I don't think any version of Windows will ever assign a BAR above 4GB. -- 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