diff options
author | Liu ShuoX <shuox.liu@intel.com> | 2013-07-11 16:03:45 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-07-15 01:31:37 +0200 |
commit | e5248a111bf4048a9f3fab1a9c94c4630a10592a (patch) | |
tree | 8d69fdd878f0c78e87bdd9c5d561b1e241bc6527 /kernel/cgroup_freezer.c | |
parent | aae760ed21cd690fe8a6db9f3a177ad55d7e12ab (diff) |
PM / Sleep: avoid 'autosleep' in shutdown progress
Prevent automatic system suspend from happening during system
shutdown by making try_to_suspend() check system_state and return
immediately if it is not SYSTEM_RUNNING.
This prevents the following breakage from happening (scenario from
Zhang Yanmin):
Kernel starts shutdown and calls all device driver's shutdown
callback. When a driver's shutdown is called, the last wakelock is
released and suspend-to-ram starts. However, as some driver's shut
down callbacks already shut down devices and disabled runtime pm,
the suspend-to-ram calls driver's suspend callback without noticing
that device is already off and causes crash.
[rjw: Changelog]
Signed-off-by: Liu ShuoX <shuox.liu@intel.com>
Cc: 3.5+ <stable@vger.kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'kernel/cgroup_freezer.c')
0 files changed, 0 insertions, 0 deletions