On Sat, Jun 15, 2019 at 10:23:56AM +1000, Benjamin Herrenschmidt wrote: > Instead of the simpler > > pci_bus_size_bridges(bus); > pci_bus_assign_resources(bus); > > Use pci_assign_unassigned_root_bus_resources(). This should have no effect > as long as we are reassigning everything. Once we start honoring FW > resource allocations, this will bring up the "reallocation" feature > which can help making room for SR-IOV when necessary. I would like to add more details on why we want to make this change, I will update the log when we merge it, it is a bit too late for v5.3, even if in theory no functional change is intended. > Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> > --- > arch/arm64/kernel/pci.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c > index bb85e2f4603f..1419b1b4e9b9 100644 > --- a/arch/arm64/kernel/pci.c > +++ b/arch/arm64/kernel/pci.c > @@ -193,8 +193,7 @@ struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root) > if (!bus) > return NULL; > > - pci_bus_size_bridges(bus); > - pci_bus_assign_resources(bus); > + pci_assign_unassigned_root_bus_resources(bus); These hunks should be identical, minus the additional resource size handling and realloc policy (which are *missing* features in current code). We must document this change in the log. Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx> > list_for_each_entry(child, &bus->children, node) > pcie_bus_configure_settings(child); > -- > 2.17.1 >