mbox series

[v2,0/6] PCI: Allow for future resource expansion on initial root bus scan

Message ID 20220905080232.36087-1-mika.westerberg@linux.intel.com (mailing list archive)
Headers show
Series PCI: Allow for future resource expansion on initial root bus scan | expand

Message

Mika Westerberg Sept. 5, 2022, 8:02 a.m. UTC
Hi,

The series works around an issue found on some Dell systems where
booting with Thunderbolt/USB4 devices connected the BIOS leaves some of
the PCIe devices unconfigured. If the connected devices that are not
configured have PCIe hotplug ports as well the initial root bus scan
only reserves the minimum amount of resources to them making any
expansion happening later impossible.

We do already distribute the "spare" resources between hotplug ports on
hot-add but we have not done that upon the initial scan. The first four
patches make the initial root bus scan path to do the same.

The additional patches are just a small cleanups that can be applied
separately too.

The related bug: https://bugzilla.kernel.org/show_bug.cgi?id=216000.

The previous version of the patch series can be found here:

  https://lore.kernel.org/linux-pci/20220816100740.68667-1-mika.westerberg@linux.intel.com/

Changes from the previous version:

  * Split patch 3 into two: move and then the actual fix as suggested by
    Andy.
  * Fold the two whitespace fixes into one patch.
  * Added tags from Chris and Andy.

Mika Westerberg (6):
  PCI: Fix used_buses calculation in pci_scan_child_bus_extend()
  PCI: Pass available buses also when the bridge is already configured
  PCI: Move pci_assign_unassigned_root_bus_resources()
  PCI: Distribute available resources for root buses too
  PCI: Fix whitespace and indentation
  PCI: Fix typo in pci_scan_child_bus_extend()

 drivers/pci/probe.c     |  13 +-
 drivers/pci/setup-bus.c | 290 ++++++++++++++++++++++++----------------
 2 files changed, 181 insertions(+), 122 deletions(-)

Comments

Bjorn Helgaas Sept. 21, 2022, 7:52 p.m. UTC | #1
On Mon, Sep 05, 2022 at 11:02:26AM +0300, Mika Westerberg wrote:
> Hi,
> 
> The series works around an issue found on some Dell systems where
> booting with Thunderbolt/USB4 devices connected the BIOS leaves some of
> the PCIe devices unconfigured. If the connected devices that are not
> configured have PCIe hotplug ports as well the initial root bus scan
> only reserves the minimum amount of resources to them making any
> expansion happening later impossible.
> 
> We do already distribute the "spare" resources between hotplug ports on
> hot-add but we have not done that upon the initial scan. The first four
> patches make the initial root bus scan path to do the same.
> 
> The additional patches are just a small cleanups that can be applied
> separately too.
> 
> The related bug: https://bugzilla.kernel.org/show_bug.cgi?id=216000.
> 
> The previous version of the patch series can be found here:
> 
>   https://lore.kernel.org/linux-pci/20220816100740.68667-1-mika.westerberg@linux.intel.com/
> 
> Changes from the previous version:
> 
>   * Split patch 3 into two: move and then the actual fix as suggested by
>     Andy.
>   * Fold the two whitespace fixes into one patch.
>   * Added tags from Chris and Andy.
> 
> Mika Westerberg (6):
>   PCI: Fix used_buses calculation in pci_scan_child_bus_extend()
>   PCI: Pass available buses also when the bridge is already configured
>   PCI: Move pci_assign_unassigned_root_bus_resources()
>   PCI: Distribute available resources for root buses too
>   PCI: Fix whitespace and indentation
>   PCI: Fix typo in pci_scan_child_bus_extend()
> 
>  drivers/pci/probe.c     |  13 +-
>  drivers/pci/setup-bus.c | 290 ++++++++++++++++++++++++----------------
>  2 files changed, 181 insertions(+), 122 deletions(-)

Applied to pci/resource for v6.1, thanks, Mika!