The check for "active" children in __pm_runtime_set_status(), when trying to set the parent device status to "suspended", doesn't really make sense, because in fact it is not invalid to set the status of a device with runtime PM disabled to "suspended" in any case. It is invalid to enable runtime PM for a device with its status set to "suspended" while its child_count reference counter is nonzero, but the check in __pm_runtime_set_status() doesn't really cover that situation. For this reason, drop the children check from __pm_runtime_set_status() and add a check against child_count reference counters of "suspended" devices to pm_runtime_enable(). Fixes: a8636c89648a (PM / Runtime: Don't allow to suspend a device with an active child) Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Johan Hovold <johan@kernel.org> |
||
|---|---|---|
| .. | ||
| powercap | ||
| regulator | ||
| 00-INDEX | ||
| apm-acpi.txt | ||
| basic-pm-debugging.txt | ||
| charger-manager.txt | ||
| drivers-testing.txt | ||
| freezing-of-tasks.txt | ||
| interface.txt | ||
| opp.txt | ||
| pci.txt | ||
| pm_qos_interface.txt | ||
| power_supply_class.txt | ||
| runtime_pm.txt | ||
| s2ram.txt | ||
| suspend-and-cpuhotplug.txt | ||
| suspend-and-interrupts.txt | ||
| swsusp-and-swap-files.txt | ||
| swsusp-dmcrypt.txt | ||
| swsusp.txt | ||
| tricks.txt | ||
| userland-swsusp.txt | ||
| video.txt | ||