Bjorn, See the bug filed here: https://bugzilla.kernel.org/show_bug.cgi?id=96651 It was apparently misfiled to go to drivers_pci. See the text of the bug filing below. This was tested on 3.10, 3.19 and 4.0 20 PCI drives installed on a 2 Node system via 5 PCI switches. Only 16 drives are actually recognized by the Linux. All 20 drives are visible via lspci. I am unable to find an appropriate address in /proc/iomem to assign these regions to. #setpci -s 0000:90:00.0 BASE_ADDRESS_5=0x....... Not specifying the address because I had no idea where to put it, I would find empty spots in /proc/iomem but thse would fall within the address space of one of the pci bridges... We are missing 4 drives with the following error seen in dmesg for each drive, one given her as an example: [ 0.983954] pci 0000:8e:00.0: can't claim BAR 6 [mem 0xffffc000-0xffffffff pref]: no compatible bridge window [ 0.984106] pci 0000:02:02.0: BAR 14: no space for [mem size 0x00100000] [ 0.984108] pci 0000:02:02.0: BAR 14: failed to assign [mem size 0x00100000] [ 0.984110] pci 0000:02:04.0: BAR 14: no space for [mem size 0x00100000] [ 0.984111] pci 0000:02:04.0: BAR 14: failed to assign [mem size 0x00100000] [ 0.984113] pci 0000:02:02.0: BAR 13: no space for [io size 0x1000] [ 0.984114] pci 0000:02:02.0: BAR 13: failed to assign [io size 0x1000] [ 0.984116] pci 0000:02:04.0: BAR 13: no space for [io size 0x1000] [ 0.984117] pci 0000:02:04.0: BAR 13: failed to assign [io size 0x1000] [ 0.984119] pci 0000:03:00.0: BAR 5: no space for [mem size 0x00002000] [ 0.984120] pci 0000:03:00.0: BAR 5: failed to assign [mem size 0x00002000] [ 0.984122] pci 0000:03:00.0: BAR 2: no space for [mem size 0x00001000] [ 0.984123] pci 0000:03:00.0: BAR 2: failed to assign [mem size 0x00001000] [ 0.984124] pci 0000:03:00.0: BAR 3: no space for [mem size 0x00001000] [ 0.984125] pci 0000:03:00.0: BAR 3: failed to assign [mem size 0x00001000] [ 0.984128] pci 0000:03:00.0: BAR 4: no space for [io size 0x0010] [ 0.984129] pci 0000:03:00.0: BAR 4: failed to assign [io size 0x0010] [ 0.984132] pci 0000:02:02.0: PCI bridge to [bus 03] [ 0.984142] pci 0000:02:03.0: PCI bridge to [bus 04] [ 0.984154] pci 0000:05:00.0: BAR 5: no space for [mem size 0x00002000] [ 0.984155] pci 0000:05:00.0: BAR 5: failed to assign [mem size 0x00002000] [ 0.984156] pci 0000:05:00.0: BAR 2: no space for [mem size 0x00001000] [ 0.984157] pci 0000:05:00.0: BAR 2: failed to assign [mem size 0x00001000] [ 0.984159] pci 0000:05:00.0: BAR 3: no space for [mem size 0x00001000] [ 0.984160] pci 0000:05:00.0: BAR 3: failed to assign [mem size 0x00001000] [ 0.984161] pci 0000:05:00.0: BAR 4: no space for [io size 0x0010] [ 0.984163] pci 0000:05:00.0: BAR 4: failed to assign [io size 0x0010] dmesg output http://pastebin.com/YaWTRYsp lspci output http://pastebin.com/NHYyS61h /proc/iomem output http://pastebin.com/zpxk9pT3 On Tue, Apr 14, 2015 at 6:58 AM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > On Tue, Apr 14, 2015 at 08:05:42AM -0500, Bjorn Helgaas wrote: >> 2) Please post a complete dmesg log, complete "lspci -vv" output, >> contents of /proc/iomem, and a transcript of what you're doing with >> setpci (remove vendor/device IDs if they are confidential, ... > > BTW, here are some sed scripts I've used to sanitize dmesg output > in the past. It's tedious to do this by hand. > > dmesg | sed -r 's/(pci ....:..:..\..: \[)....:....(\].*)/\1VVVV:DDDD\2/' | sed -r 's/(DMI:).*/\1 (removed)/' | sed -r 's/(ACPI: [A-Z]{4} [0-9a-fA-F]{16} .*\().*(\).*)/\1...\2/' | sed -r 's/(scsi.*: Direct-Access).*/\1 .../' -- 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