mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Ard Biesheuvel <ardb+git@google.com>
Cc: linux-pci@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
	 Ard Biesheuvel <ardb@kernel.org>,
	Bjorn Helgaas <bhelgaas@google.com>,
	 Lorenzo Pieralisi <lpieralisi@kernel.org>
Subject: Re: [PATCH v3 0/2] PCI: Allow non-prefetchable BARs in prefetchable windows
Date: Wed, 30 Sep 2026 21:31:37 +0300 (EEST)	[thread overview]
Message-ID: <c073656c-3282-2116-7999-5284096e8c57@linux.intel.com> (raw)
In-Reply-To: <20260930103036.248989-4-ardb+git@google.com>

[-- Attachment #1: Type: text/plain, Size: 7859 bytes --]

On Wed, 30 Sep 2026, Ard Biesheuvel wrote:

> From: Ard Biesheuvel <ardb@kernel.org>
> 
> (v2 never made it to linux-pci@ - please disregard it if you did get it)
> 
> The non-prefetchable window of a PCI-to-PCI bridge can only decode
> 32-bit addresses, and so even 64-bit non-prefetchable BARs of devices
> below a bridge compete for the scarce MMIO space below 4 GB.
> 
> The PCIe spec notes that marking such a BAR prefetchable still permits
> correct operation as long as the entire path from the host to the device
> is PCIe (PCIe r7.0, sec 7.5.1.2.1). The same applies when the OS places
> a non-prefetchable BAR in a prefetchable bridge window, and so this
> series permits that unless there is a bridge on the path to the root bus
> that is not a PCIe Root Port or Switch Port, allowing 64-bit
> non-prefetchable BARs to be placed above 4 GB.
> 
> So add a new bus flag PCI_BUS_FLAGS_NO_NP_BARS_IN_P_WINDOWS, and wire it
> up so that it is only set on buses where this relaxed placement is not
> permitted. Then, use the flag to to decide whether to treat 64-bit NP
> BARs as prefetchable only for the purpose of resource allocation (but
> not for mapping the MMIO region or other reporting its properties)
> 
> Patch #1 is a preparatory refactor of pci_bus_alloc_resource() with no
> functional change, and patch #2 implements the relaxation.
> 
> (based on v7.3-rc4)
> 
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Link: https://lore.kernel.org/linux-pci/20260910143440.3865663-2-ardb+git@google.com/
> 
> Ard Biesheuvel (2):
>   PCI: Add __pci_bus_alloc_resource() to allocate with explicit flags
>   PCI: Allow 64-bit non-prefetchable BARs in prefetchable windows
> 
>  drivers/pci/bus.c       | 70 ++++++++++++++------
>  drivers/pci/pci.c       | 43 +++++++++++-
>  drivers/pci/pci.h       |  7 ++
>  drivers/pci/probe.c     | 35 ++++++++++
>  drivers/pci/setup-bus.c | 23 +++++--
>  drivers/pci/setup-res.c | 30 ++++++---
>  include/linux/pci.h     |  1 +
>  7 files changed, 169 insertions(+), 40 deletions(-)

Hi,

Nice. I gave this series a spin.

Without pci=realloc, there weren't any changes in iomem (which is probably 
okay result).

With pci=realloc, there seems to be some successful moves from 32-bit -> 
64-bit but something goes wrong with it in some other cases.

I looked into the simplest case with problems. VF BARs only vanished 
from 32-bit window, which I suppose is part of the correct behavior, but 
never reappeared on 64-bit side.

Here's the timestampless diff for convenience:

--- /dev/fd/63	2026-09-30 16:01:19.364780770 +0300
+++ /dev/fd/62	2026-09-30 16:01:19.364780770 +0300
@@ -72,21 +72,45 @@
 pci 0000:d7:00.0: bridge window [mem 0xee800000-0xeebfffff]: releasing
 pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
 pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
-pci 0000:d7:00.0: bridge window [mem size 0x00000000] to [bus d8-d9] add_size 500000 add_align 100000
-pci 0000:d7:00.0: bridge window [mem 0xeed00000-0xef1fffff]: assigned
-pci 0000:d8:00.0: ROM [mem 0xeed00000-0xeed7ffff pref]: assigned
-pci 0000:d8:00.1: ROM [mem 0xeed80000-0xeedfffff pref]: assigned
-pci 0000:d8:00.0: VF BAR 0 [mem 0xeee00000-0xeeefffff 64bit]: assigned
-pci 0000:d8:00.0: VF BAR 3 [mem 0xeef00000-0xeeffffff 64bit]: assigned
-pci 0000:d8:00.1: VF BAR 0 [mem 0xef000000-0xef0fffff 64bit]: assigned
-pci 0000:d8:00.1: VF BAR 3 [mem 0xef100000-0xef1fffff 64bit]: assigned
+pci 0000:d7:00.0: bridge window [mem size 0x00000000] to [bus d8-d9] add_size 100000 add_align 100000
+pci 0000:d7:00.0: bridge window [mem 0xee800000-0xee8fffff]: assigned
+pci 0000:d8:00.0: ROM [mem 0xee800000-0xee87ffff pref]: assigned
+pci 0000:d8:00.1: ROM [mem 0xee880000-0xee8fffff pref]: assigned
+pci 0000:d8:00.0: VF BAR 0 [mem size 0x00100000 64bit]: can't assign; no space
+pci 0000:d8:00.0: VF BAR 0 [mem size 0x00100000 64bit]: failed to assign
+pci 0000:d8:00.0: VF BAR 3 [mem size 0x00100000 64bit]: can't assign; no space
+pci 0000:d8:00.0: VF BAR 3 [mem size 0x00100000 64bit]: failed to assign
+pci 0000:d8:00.1: VF BAR 0 [mem size 0x00100000 64bit]: can't assign; no space
+pci 0000:d8:00.1: VF BAR 0 [mem size 0x00100000 64bit]: failed to assign
+pci 0000:d8:00.1: VF BAR 3 [mem size 0x00100000 64bit]: can't assign; no space
+pci 0000:d8:00.1: VF BAR 3 [mem size 0x00100000 64bit]: failed to assign
+pci 0000:d8:00.0: ROM [mem 0xee800000-0xee87ffff pref]: releasing
+pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
+pci 0000:d8:00.1: ROM [mem 0xee880000-0xee8fffff pref]: releasing
+pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
+pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
+pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
+pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
+pci 0000:d8:00.1: ROM [mem 0xee800000-0xee87ffff pref]: assigned
+pci 0000:d8:00.0: ROM [mem 0xee880000-0xee8fffff pref]: assigned
+pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resetting resource
+pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resetting resource
+pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resetting resource
+pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resetting resource
 pci 0000:d7:00.0: PCI bridge to [bus d8-d9]
-pci 0000:d7:00.0:   bridge window [mem 0xeed00000-0xef1fffff]
+pci 0000:d7:00.0:   bridge window [mem 0xee800000-0xee8fffff]
 pci 0000:d7:00.0:   bridge window [mem 0x207fff400000-0x207fffcfffff 64bit pref]
 pci_bus 0000:d7: resource 4 [io  0xf000-0xffff window]
 pci_bus 0000:d7: resource 5 [mem 0xee800000-0xfbffffff window]
 pci_bus 0000:d7: resource 6 [mem 0x207000000000-0x207fffffffff window]
-pci_bus 0000:d8: resource 1 [mem 0xeed00000-0xef1fffff]
+pci_bus 0000:d8: resource 1 [mem 0xee800000-0xee8fffff]
 pci_bus 0000:d8: resource 2 [mem 0x207fff400000-0x207fffcfffff 64bit pref]
 pci 0000:d7:05.0: disabled boot interrupts on device [8086:2034]
 pci 0000:d8:00.0: CLS mismatch (128 != 32), using 64 bytes

The problems could be related to pci=realloc not touching already assigned 
bridge windows in many cases. pbus_size_mem() has resource_assigned() 
check early so it won't size those bridge windows again. I've some 
unfinished patch to remove that restriction but have been busy solving the 
recent set of regressions.

Because VF BARs are optional resources, their failures are considered 
acceptable so together with not trying to resize those windows, no 
failures are detected by the fitting algorithm.

There are a few cases that are more messy than the one above. I'll try to 
later look if they are fine or not. Annoyingly VF BARs are left with the 
original base address when they fail, so they appear in lspci with what 
looks a valid address but the corresponding resource is not in the 
resource tree so it takes time to decipher if everything is properly 
assigned or not (when things move around in iomem diffing it won't 
easily tell it either).


-- 
 i.

[-- Attachment #2: Type: application/vnd.lotus-freelance, Size: 7611 bytes --]

[-- Attachment #3: Type: text/plain, Size: 9914 bytes --]

[    9.677904] PCI host bridge to bus 0000:d7
[    9.677915] pci_bus 0000:d7: root bus resource [io  0xf000-0xffff window]
[    9.677918] pci_bus 0000:d7: root bus resource [mem 0xee800000-0xfbffffff window]
[    9.677921] pci_bus 0000:d7: root bus resource [mem 0x207000000000-0x207fffffffff window]
[    9.677923] pci_bus 0000:d7: root bus resource [bus d7-ff]
[    9.677927] pci_bus 0000:d7: scanning bus
[    9.677965] pci 0000:d7:00.0: [8086:203f] type 01 class 0x060400 PCIe Root Port
[    9.677986] pci 0000:d7:00.0: PCI bridge to [bus d8-d9]
[    9.677991] pci 0000:d7:00.0:   bridge window [mem 0xee800000-0xeebfffff]
[    9.678000] pci 0000:d7:00.0:   bridge window [mem 0x207fff400000-0x207fffcfffff 64bit pref]
[    9.678008] pci 0000:d7:00.0: enabling Extended Tags
[    9.678074] pci 0000:d7:00.0: PME# supported from D0 D3hot D3cold
[    9.678078] pci 0000:d7:00.0: PME# disabled
[    9.679704] pci 0000:d7:05.0: [8086:2034] type 00 class 0x088000 PCIe Root Complex Integrated Endpoint
[    9.680113] pci 0000:d7:05.2: [8086:2035] type 00 class 0x088000 PCIe Root Complex Integrated Endpoint
[    9.680514] pci 0000:d7:05.4: [8086:2036] type 00 class 0x080020 PCIe Root Complex Integrated Endpoint
[    9.680543] pci 0000:d7:05.4: BAR 0 [mem 0xeec80000-0xeec80fff]
[    9.680951] pci_bus 0000:d7: fixups for bus
[    9.680954] pci 0000:d7:00.0: scanning [bus d8-d9] behind bridge, pass 0
[    9.681275] pci_bus 0000:d8: dev 00, created physical slot 9
[    9.681755] acpiphp_glue: found ACPI PCI Hotplug slot 9 at PCI 0000:d8:00
[    9.681914] pci_bus 0000:d8: scanning bus
[    9.681970] pci 0000:d8:00.0: [8086:1563] type 00 class 0x020000 PCIe Endpoint
[    9.682014] pci 0000:d8:00.0: BAR 0 [mem 0x207fff800000-0x207fffbfffff 64bit pref]
[    9.682020] pci 0000:d8:00.0: BAR 4 [mem 0x207fffc04000-0x207fffc07fff 64bit pref]
[    9.682023] pci 0000:d8:00.0: ROM [mem 0xfff80000-0xffffffff pref]
[    9.682138] pci 0000:d8:00.0: PME# supported from D0 D3hot
[    9.682142] pci 0000:d8:00.0: PME# disabled
[    9.682188] pci 0000:d8:00.0: VF BAR 0 [mem 0xee800000-0xee803fff 64bit]
[    9.682191] pci 0000:d8:00.0: VF BAR 0 [mem 0xee800000-0xee8fffff 64bit]: contains BAR 0 for 64 VFs
[    9.682201] pci 0000:d8:00.0: VF BAR 3 [mem 0xee900000-0xee903fff 64bit]
[    9.682202] pci 0000:d8:00.0: VF BAR 3 [mem 0xee900000-0xee9fffff 64bit]: contains BAR 3 for 64 VFs
[    9.683220] pci 0000:d8:00.1: [8086:1563] type 00 class 0x020000 PCIe Endpoint
[    9.683268] pci 0000:d8:00.1: BAR 0 [mem 0x207fff400000-0x207fff7fffff 64bit pref]
[    9.683274] pci 0000:d8:00.1: BAR 4 [mem 0x207fffc00000-0x207fffc03fff 64bit pref]
[    9.683277] pci 0000:d8:00.1: ROM [mem 0xfff80000-0xffffffff pref]
[    9.683382] pci 0000:d8:00.1: PME# supported from D0 D3hot
[    9.683386] pci 0000:d8:00.1: PME# disabled
[    9.683427] pci 0000:d8:00.1: VF BAR 0 [mem 0xeea00000-0xeea03fff 64bit]
[    9.683429] pci 0000:d8:00.1: VF BAR 0 [mem 0xeea00000-0xeeafffff 64bit]: contains BAR 0 for 64 VFs
[    9.683434] pci 0000:d8:00.1: VF BAR 3 [mem 0xeeb00000-0xeeb03fff 64bit]
[    9.683436] pci 0000:d8:00.1: VF BAR 3 [mem 0xeeb00000-0xeebfffff 64bit]: contains BAR 3 for 64 VFs
[    9.684452] pci_bus 0000:d8: fixups for bus
[    9.684453] pci 0000:d7:00.0: PCI bridge to [bus d8-d9]
[    9.684462] pci_bus 0000:d8: bus scan returning with max=d8
[    9.684467] pci 0000:d7:00.0: scanning [bus d8-d9] behind bridge, pass 1
[    9.684472] pci_bus 0000:d7: bus scan returning with max=d9
[    9.684473] pci_bus 0000:d7: on NUMA node 1
[    9.713581] pci 0000:d7:00.0: bridge window [mem 0xee800000-0xeebfffff]: claiming
[    9.713582] pci 0000:d7:00.0: bridge window [mem 0x207fff400000-0x207fffcfffff 64bit pref]: claiming
[    9.713890] pci 0000:d8:00.0: BAR 0 [mem 0x207fff800000-0x207fffbfffff 64bit pref]: claiming
[    9.713892] pci 0000:d8:00.0: BAR 4 [mem 0x207fffc04000-0x207fffc07fff 64bit pref]: claiming
[    9.713894] pci 0000:d8:00.0: VF BAR 0 [mem 0xee800000-0xee8fffff 64bit]: claiming
[    9.713896] pci 0000:d8:00.0: VF BAR 3 [mem 0xee900000-0xee9fffff 64bit]: claiming
[    9.713903] pci 0000:d8:00.1: BAR 0 [mem 0x207fff400000-0x207fff7fffff 64bit pref]: claiming
[    9.713904] pci 0000:d8:00.1: BAR 4 [mem 0x207fffc00000-0x207fffc03fff 64bit pref]: claiming
[    9.713906] pci 0000:d8:00.1: VF BAR 0 [mem 0xeea00000-0xeeafffff 64bit]: claiming
[    9.713908] pci 0000:d8:00.1: VF BAR 3 [mem 0xeeb00000-0xeebfffff 64bit]: claiming
[    9.713913] pci 0000:d7:05.4: BAR 0 [mem 0xeec80000-0xeec80fff]: claiming
[    9.872901] pci 0000:d8:00.0: ROM [mem 0xfff80000-0xffffffff pref]: can't claim; no compatible bridge window
[    9.872905] pci 0000:d8:00.1: ROM [mem 0xfff80000-0xffffffff pref]: can't claim; no compatible bridge window
[    9.874174] pci_bus 0000:d7: max bus depth: 1 pci_try_num: 2
[    9.874181] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: can't assign; no space
[    9.874198] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: failed to assign
[    9.874200] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: can't assign; no space
[    9.874202] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: failed to assign
[    9.874206] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resetting resource
[    9.874209] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resetting resource
[    9.874212] pci 0000:d7:00.0: PCI bridge to [bus d8-d9]
[    9.874216] pci 0000:d7:00.0:   bridge window [mem 0xee800000-0xeebfffff]
[    9.874219] pci 0000:d7:00.0:   bridge window [mem 0x207fff400000-0x207fffcfffff 64bit pref]
[    9.874232] pci 0000:d7:00.0: bridge window [mem 0xee800000-0xeebfffff]: releasing
[    9.874235] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
[    9.874236] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
[    9.874241] pci 0000:d7:00.0: bridge window [mem size 0x00000000] to [bus d8-d9] add_size 100000 add_align 100000
[    9.874248] pci 0000:d7:00.0: bridge window [mem 0xee800000-0xee8fffff]: assigned
[    9.874259] pci 0000:d8:00.0: ROM [mem 0xee800000-0xee87ffff pref]: assigned
[    9.874261] pci 0000:d8:00.1: ROM [mem 0xee880000-0xee8fffff pref]: assigned
[    9.874266] pci 0000:d8:00.0: VF BAR 0 [mem size 0x00100000 64bit]: can't assign; no space
[    9.874268] pci 0000:d8:00.0: VF BAR 0 [mem size 0x00100000 64bit]: failed to assign
[    9.874273] pci 0000:d8:00.0: VF BAR 3 [mem size 0x00100000 64bit]: can't assign; no space
[    9.874274] pci 0000:d8:00.0: VF BAR 3 [mem size 0x00100000 64bit]: failed to assign
[    9.874279] pci 0000:d8:00.1: VF BAR 0 [mem size 0x00100000 64bit]: can't assign; no space
[    9.874280] pci 0000:d8:00.1: VF BAR 0 [mem size 0x00100000 64bit]: failed to assign
[    9.874284] pci 0000:d8:00.1: VF BAR 3 [mem size 0x00100000 64bit]: can't assign; no space
[    9.874286] pci 0000:d8:00.1: VF BAR 3 [mem size 0x00100000 64bit]: failed to assign
[    9.874294] pci 0000:d8:00.0: ROM [mem 0xee800000-0xee87ffff pref]: releasing
[    9.874296] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
[    9.874297] pci 0000:d8:00.1: ROM [mem 0xee880000-0xee8fffff pref]: releasing
[    9.874299] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
[    9.874301] pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874302] pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874304] pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874305] pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874307] pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874308] pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874310] pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874311] pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resource restored
[    9.874313] pci 0000:d8:00.1: ROM [mem size 0x00080000 pref]: resource restored
[    9.874315] pci 0000:d8:00.0: ROM [mem size 0x00080000 pref]: resource restored
[    9.874318] pci 0000:d8:00.1: ROM [mem 0xee800000-0xee87ffff pref]: assigned
[    9.874320] pci 0000:d8:00.0: ROM [mem 0xee880000-0xee8fffff pref]: assigned
[    9.874323] pci 0000:d8:00.0: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resetting resource
[    9.874325] pci 0000:d8:00.0: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resetting resource
[    9.874327] pci 0000:d8:00.1: VF BAR 0 [mem 0x00000000-0x000fffff 64bit]: resetting resource
[    9.874329] pci 0000:d8:00.1: VF BAR 3 [mem 0x00000000-0x000fffff 64bit]: resetting resource
[    9.874332] pci 0000:d7:00.0: PCI bridge to [bus d8-d9]
[    9.874336] pci 0000:d7:00.0:   bridge window [mem 0xee800000-0xee8fffff]
[    9.874339] pci 0000:d7:00.0:   bridge window [mem 0x207fff400000-0x207fffcfffff 64bit pref]
[    9.874344] pci_bus 0000:d7: resource 4 [io  0xf000-0xffff window]
[    9.874346] pci_bus 0000:d7: resource 5 [mem 0xee800000-0xfbffffff window]
[    9.874348] pci_bus 0000:d7: resource 6 [mem 0x207000000000-0x207fffffffff window]
[    9.874350] pci_bus 0000:d8: resource 1 [mem 0xee800000-0xee8fffff]
[    9.874352] pci_bus 0000:d8: resource 2 [mem 0x207fff400000-0x207fffcfffff 64bit pref]
[    9.876327] pci 0000:d7:05.0: disabled boot interrupts on device [8086:2034]
[    9.876341] pci 0000:d8:00.0: CLS mismatch (128 != 32), using 64 bytes
[   10.076194] pcieport 0000:d7:00.0: vgaarb: pci_notify
[   10.076212] pcieport 0000:d7:00.0: runtime IRQ mapping not provided by arch
[   10.077347] pcieport 0000:d7:00.0: PME: Signaling with IRQ 27
[   10.077620] pcieport 0000:d7:00.0: bwctrl: enabled with IRQ 27
[   10.077965] pcieport 0000:d7:00.0: vgaarb: pci_notify

[-- Attachment #4: Type: application/vnd.lotus-freelance, Size: 4985 bytes --]

[-- Attachment #5: Type: text/plain, Size: 4969 bytes --]

00000000-00000fff : Reserved
00001000-0009dfff : System RAM
0009e000-0009efff : Reserved
0009f000-0009ffff : ACPI Non-volatile Storage
000a0000-000fffff : Reserved
  000a0000-000bffff : PCI Bus 0000:00
  000c4000-000c7fff : PCI Bus 0000:00
  000f0000-000fffff : System ROM
00100000-62c88fff : System RAM
62c89000-64488fff : Reserved
  63452018-63452067 : APEI ERST
  63452070-63452077 : APEI ERST
  63452078-63454017 : APEI ERST
64489000-65aacfff : ACPI Non-volatile Storage
65aad000-663fdfff : ACPI Tables
663fe000-6f7fffff : System RAM
6f800000-7fffffff : Reserved
80000000-8fffffff : PCI ECAM 0000 [bus 00-ff]
90000000-9d7fffff : PCI Bus 0000:00
  91000000-920fffff : PCI Bus 0000:02
    91000000-920fffff : PCI Bus 0000:03
      91000000-91ffffff : 0000:03:00.0
        91000000-912fffff : efifb
      92000000-9201ffff : 0000:03:00.0
  92100000-921fffff : PCI Bus 0000:01
    92100000-9217ffff : 0000:01:00.0
      92100000-9217ffff : igb
    92180000-92183fff : 0000:01:00.0
      92180000-92183fff : igb
  92200000-9227ffff : 0000:00:17.0
    92200000-9227ffff : ahci
  92280000-922fffff : 0000:00:11.5
    92280000-922fffff : ahci
  92300000-92303fff : 0000:00:1f.2
  92304000-92305fff : 0000:00:17.0
    92304000-92305fff : ahci
  92306000-92307fff : 0000:00:11.5
    92306000-92307fff : ahci
  92309000-923090ff : 0000:00:17.0
    92309000-923090ff : ahci
  9230a000-9230a0ff : 0000:00:11.5
    9230a000-9230a0ff : ahci
  9230b000-9230bfff : 0000:00:05.4
9d800000-aaffffff : PCI Bus 0000:16
  9d800000-9d800fff : 0000:16:05.4
ab000000-b87fffff : PCI Bus 0000:39
  ab000000-ab000fff : 0000:39:05.4
b8800000-c5ffffff : PCI Bus 0000:5d
  b8800000-b8800fff : 0000:5d:05.4
c6000000-d37fffff : PCI Bus 0000:80
  c6000000-c6000fff : 0000:80:05.4
d3800000-e0ffffff : PCI Bus 0000:84
  d3800000-d3800fff : 0000:84:05.4
e1000000-ee7fffff : PCI Bus 0000:ad
  e1000000-e1000fff : 0000:ad:05.4
ee800000-fbffffff : PCI Bus 0000:d7
  ee800000-ee8fffff : PCI Bus 0000:d8
    ee800000-ee87ffff : 0000:d8:00.1
    ee880000-ee8fffff : 0000:d8:00.0
  eec80000-eec80fff : 0000:d7:05.4
fd000000-fdabffff : PNP0C02:01
fdad0000-fdadffff : PNP0C02:01
fdb00000-fdffffff : PNP0C02:01
  fdc6000c-fdc6000f : iTCO_wdt
fe000000-fe010fff : Reserved
  fe000000-fe00ffff : PNP0C02:01
  fe010000-fe010fff : PCI Bus 0000:00
    fe010000-fe010fff : 0000:00:1f.5
fe011000-fe01ffff : PNP0C02:01
fe036000-fe03bfff : PNP0C02:01
fe03d000-fe3fffff : PNP0C02:01
fe410000-fe7fffff : PNP0C02:01
fec00000-fecfffff : PNP0003:00
  fec00000-fec003ff : IOAPIC 0
  fec01000-fec013ff : IOAPIC 1
  fec08000-fec083ff : IOAPIC 2
  fec10000-fec103ff : IOAPIC 3
  fec18000-fec183ff : IOAPIC 4
  fec20000-fec203ff : IOAPIC 5
  fec28000-fec283ff : IOAPIC 6
  fec30000-fec303ff : IOAPIC 7
  fec38000-fec383ff : IOAPIC 8
fed00000-fed003ff : HPET 0
  fed00000-fed003ff : PNP0103:00
fed40000-fed47fff : PNP0C02:00
ff000000-ffffffff : PNP0C02:00
100000000-87fffffff : System RAM
  6e2000000-6e325aef7 : Kernel code
  6e3400000-6e4117fff : Kernel rodata
  6e4200000-6e45e5c3f : Kernel data
  6e4f6b000-6e5c25fff : Kernel bss
200000000000-200fffffffff : PCI Bus 0000:00
  200ffff00000-200ffff0ffff : 0000:00:14.0
    200ffff00000-200ffff0ffff : xhci-hcd
  200ffff10000-200ffff13fff : 0000:00:04.7
  200ffff14000-200ffff17fff : 0000:00:04.6
  200ffff18000-200ffff1bfff : 0000:00:04.5
  200ffff1c000-200ffff1ffff : 0000:00:04.4
  200ffff20000-200ffff23fff : 0000:00:04.3
  200ffff24000-200ffff27fff : 0000:00:04.2
  200ffff28000-200ffff2bfff : 0000:00:04.1
  200ffff2c000-200ffff2ffff : 0000:00:04.0
  200ffff30000-200ffff300ff : 0000:00:1f.4
    200ffff30000-200ffff300ff : i801_smbus
  200ffff31000-200ffff31fff : 0000:00:16.4
  200ffff32000-200ffff32fff : 0000:00:16.1
  200ffff33000-200ffff33fff : 0000:00:16.0
  200ffff34000-200ffff34fff : 0000:00:14.2
201000000000-201fffffffff : PCI Bus 0000:16
202000000000-202fffffffff : PCI Bus 0000:39
203000000000-203fffffffff : PCI Bus 0000:5d
204000000000-204fffffffff : PCI Bus 0000:80
  204ffff00000-204ffff03fff : 0000:80:04.7
  204ffff04000-204ffff07fff : 0000:80:04.6
  204ffff08000-204ffff0bfff : 0000:80:04.5
  204ffff0c000-204ffff0ffff : 0000:80:04.4
  204ffff10000-204ffff13fff : 0000:80:04.3
  204ffff14000-204ffff17fff : 0000:80:04.2
  204ffff18000-204ffff1bfff : 0000:80:04.1
  204ffff1c000-204ffff1ffff : 0000:80:04.0
205000000000-205fffffffff : PCI Bus 0000:84
206000000000-206fffffffff : PCI Bus 0000:ad
207000000000-207fffffffff : PCI Bus 0000:d7
  207fff400000-207fffcfffff : PCI Bus 0000:d8
    207fff400000-207fff7fffff : 0000:d8:00.1
      207fff400000-207fff7fffff : ixgbe
    207fff800000-207fffbfffff : 0000:d8:00.0
      207fff800000-207fffbfffff : ixgbe
    207fffc00000-207fffc03fff : 0000:d8:00.1
      207fffc00000-207fffc03fff : ixgbe
    207fffc04000-207fffc07fff : 0000:d8:00.0
      207fffc04000-207fffc07fff : ixgbe

      parent reply	other threads:[~2026-09-30 18:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-30 10:30 Ard Biesheuvel
2026-09-30 10:30 ` [PATCH v3 1/2] PCI: Add __pci_bus_alloc_resource() to allocate with explicit flags Ard Biesheuvel
2026-09-30 10:30 ` [PATCH v3 2/2] PCI: Allow 64-bit non-prefetchable BARs in prefetchable windows Ard Biesheuvel
2026-09-30 18:50   ` Ilpo Järvinen
2026-09-30 18:31 ` Ilpo Järvinen [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c073656c-3282-2116-7999-5284096e8c57@linux.intel.com \
    --to=ilpo.jarvinen@linux.intel.com \
    --cc=ardb+git@google.com \
    --cc=ardb@kernel.org \
    --cc=bhelgaas@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®