On Thu, Dec 04, 2014 at 02:15:14PM -0800, Yinghai Lu wrote: > On Thu, Dec 4, 2014 at 8:15 AM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > > On Wed, Dec 03, 2014 at 05:41:32PM -0800, Yinghai Lu wrote: > >> On Wed, Dec 3, 2014 at 5:38 PM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: > >> > On Wed, Dec 3, 2014 at 2:15 PM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > >> >> There's a bugzilla for this, so this email is to make the bugzilla > >> >> more discoverable and to have a more public discussion about it. > >> >> > >> >> https://bugzilla.kernel.org/show_bug.cgi?id=85491 > >> >> > >> >> I think this regression is caused by 5b28541552ef ("PCI: Restrict > >> >> 64-bit prefetchable bridge windows to 64-bit resources"). These dmesg > >> >> fragments are from v3.16, which doesn't work: > >> >> > >> >> pci_bus 0000:00: root bus resource [mem 0xc0000000-0xffffffff] > >> >> > >> >> pci 0000:00:01.0: PCI bridge to [bus 01] > >> >> pci 0000:00:01.0: bridge window [io 0x8000-0xafff] > >> >> pci 0000:00:01.0: bridge window [mem 0xfdf00000-0xfdffffff] > >> >> pci 0000:00:01.0: bridge window [mem 0xbdf00000-0xddefffff 64bit > >> >> pref] <-- outside host bridge window > >> >> > >> >> pci 0000:01:00.0: reg 0x10: [mem 0xc0000000-0xcfffffff pref] > >> >> pci 0000:01:00.0: reg 0x14: [io 0xa000-0xa0ff] > >> >> pci 0000:01:00.0: reg 0x18: [mem 0xfdff0000-0xfdffffff] > >> >> pci 0000:01:00.0: reg 0x30: [mem 0xfdfc0000-0xfdfdffff pref] > >> >> > >> >> pci 0000:00:01.0: can't claim BAR 15 [mem 0xbdf00000-0xddefffff > >> >> 64bit pref]: no compatible bridge window > >> >> pci 0000:01:00.0: can't claim BAR 0 [mem 0xc0000000-0xcfffffff > >> >> pref]: no compatible bridge window > >> > > >> > Looks like we wrong type checking from parent resource searching. > > > > I don't understand what you're trying to say, but I don't think the "no > > compatible bridge window" problem is related to resource types. I think > > it's because the 00:01.0 window at [mem 0xbdf00000-0xddefffff] starts > > before the [mem 0xc0000000-0xffffffff] host bridge window. > > on this system _CRS is not used. Oh, sorry, I didn't notice that Zermond's system doesn't use _CRS. I had been looking at the logs from Marek, and we *do* use _CRS there. On Zermond's machine we do still have the e820 code that figures out this: e820: [mem 0xc0000000-0xfedfffff] available for PCI devices I think we could at least clamp the default host bridge window ([mem 0x00000000-0xfffffffff]) to that. Bjorn -- 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