[PATCH v5 05/11] PCI: liveupdate: Keep bus numbers constant during Live Update

Bjorn Helgaas helgaas at kernel.org
Fri May 22 10:59:05 PDT 2026


On Tue, May 12, 2026 at 06:48:40PM +0000, David Matlack wrote:
> ...

> + * The PCI core guarantees that preserved devices can be identified by the same
> + * bus, device, and function numbers for as long as they are preserved
> + * (including across kexec). To accomplish this, the PCI core always inherits
> + * the secondary and subordinate bus numbers assigned to bridges during scanning
> + * if any device is preserved. This is true even on architectures that always
> + * assign new bus numbers during scanning. The kernel assumes the previous
> + * kernel established a sane bus topology across kexec.
> + *
> + * If a misconfigured or unconfigured bridge is encountered during enumeration
> + * while there are preserved devices, itss secondary and subordinate bus numbers
> + * will be cleared and devices below it will not be enumerated.

s/itss/its/

> + * To keep things simple, inherit the secondary and subordinate bus numbers on
> + * _all_ bridges if _any_ PCI devices are preserved (i.e.  even bridges without
> + * any downstream endpoints that were preserved).  This avoids accidentally
> + * assigning a bridge a new window that overlaps with a preserved device that is
> + * downstream of a different bridge.

s/i.e.  even/i.e. even/ (remove extra space)



More information about the kexec mailing list