On Tue, Sep 06, 2016 at 06:20:46AM +0200, Lukas Wunner wrote: > Starting with v4.8, we allow a PCIe port to runtime suspend to D3hot if > the port itself and its children satisfy a number of conditions. Once a > child is removed, we recheck those conditions in case the removed device > was blocking the port from suspending. > > The rechecking needs to happen *after* the device has been removed from > the bus it resides on. Otherwise when walking the port's subordinate > bus in pci_bridge_d3_update(), the device being removed would > erroneously still be taken into account. > > However the device is removed from the bus_list in pci_destroy_dev() and > we currently recheck *before* that. Fix it. Yes, makes sense. > Fixes: 9d26d3a8f1b0 ("PCI: Put PCIe ports into D3 during suspend") > Cc: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html