On Fri, Aug 18, 2023 at 9:40 PM Mario Limonciello <mario.limonciello@xxxxxxx> wrote: > > acpi_pci_bridge_d3() only runs on hotplug bridges. Two checks are made > for _S0W and for whether a device is power manageable contingent upon > an ACPI companion being present. > > These checks also make sense for non-hotplug bridges, so move the > check for hotplug bridge after the acpi companion checks. > > Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx> Looks reasonable to me. Acked-by: Rafael J. Wysocki <rafael@xxxxxxxxxx> > --- > drivers/pci/pci-acpi.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c > index b5b65cdfa3b8b..64e6ada024235 100644 > --- a/drivers/pci/pci-acpi.c > +++ b/drivers/pci/pci-acpi.c > @@ -1017,7 +1017,7 @@ bool acpi_pci_bridge_d3(struct pci_dev *dev) > struct acpi_device *adev, *rpadev; > const union acpi_object *obj; > > - if (acpi_pci_disabled || !dev->is_hotplug_bridge) > + if (acpi_pci_disabled) > return false; > > adev = ACPI_COMPANION(&dev->dev); > @@ -1039,6 +1039,9 @@ bool acpi_pci_bridge_d3(struct pci_dev *dev) > return true; > } > > + if (!dev->is_hotplug_bridge) > + return false; > + > rpdev = pcie_find_root_port(dev); > if (!rpdev) > return false; > --