diff options
author | Pingfan Liu <kernelfans@gmail.com> | 2018-07-31 16:51:32 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2018-08-06 12:35:20 +0200 |
commit | 55f2503c3b69328735e88031ff8d6ba291bd952b (patch) | |
tree | c89f476f4866d1e3ee11aa8b8601c68a23e3b025 /kernel/freezer.c | |
parent | 82837ad5bda79cd13d64b9abad92e7872a06bc65 (diff) | |
download | linux-stable-55f2503c3b69328735e88031ff8d6ba291bd952b.tar.gz linux-stable-55f2503c3b69328735e88031ff8d6ba291bd952b.tar.bz2 linux-stable-55f2503c3b69328735e88031ff8d6ba291bd952b.zip |
PM / reboot: Eliminate race between reboot and suspend
At present, "systemctl suspend" and "shutdown" can run in parrallel. A
system can suspend after devices_shutdown(), and resume. Then the shutdown
task goes on to power off. This causes many devices are not really shut
off. Hence replacing reboot_mutex with system_transition_mutex (renamed
from pm_mutex) to achieve the exclusion. The renaming of pm_mutex as
system_transition_mutex can be better to reflect the purpose of the mutex.
Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'kernel/freezer.c')
-rw-r--r-- | kernel/freezer.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/freezer.c b/kernel/freezer.c index 6f56a9e219fa..b162b74611e4 100644 --- a/kernel/freezer.c +++ b/kernel/freezer.c @@ -15,7 +15,9 @@ atomic_t system_freezing_cnt = ATOMIC_INIT(0); EXPORT_SYMBOL(system_freezing_cnt); -/* indicate whether PM freezing is in effect, protected by pm_mutex */ +/* indicate whether PM freezing is in effect, protected by + * system_transition_mutex + */ bool pm_freezing; bool pm_nosig_freezing; |