Files
kernel_xiaomi_sm8250/kernel
Rafael J. Wysocki ccd4b65aef PM: prevent frozen user mode helpers from failing the freezing of tasks
At present, if a user mode helper is running while
usermodehelper_pm_callback() is executed, the helper may be frozen and the
completion in call_usermodehelper_exec() won't be completed until user
space processes are thawed.  As a result, the freezing of kernel threads
may fail, which is not desirable.

Prevent this from happening by introducing a counter of running user mode
helpers and allowing usermodehelper_pm_callback() to succeed for action =
PM_HIBERNATION_PREPARE or action = PM_SUSPEND_PREPARE only if there are no
helpers running.  [Namely, usermodehelper_pm_callback() waits for at most
RUNNING_HELPERS_TIMEOUT for the number of running helpers to become zero
and fails if that doesn't happen.]

Special thanks to Uli Luckas <u.luckas@road.de>, Pavel Machek
<pavel@ucw.cz> and Oleg Nesterov <oleg@tv-sign.ru> for reviewing the
previous versions of this patch and for very useful comments.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Uli Luckas <u.luckas@road.de>
Acked-by: Nigel Cunningham <nigel@nigel.suspend2.net>
Acked-by: Pavel Machek <pavel@ucw.cz>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-19 10:04:42 -07:00
..
2007-07-16 09:05:47 -07:00
2007-07-16 09:05:48 -07:00
2007-07-16 12:05:49 +03:00
2007-07-18 08:47:40 -07:00
2007-07-19 10:04:41 -07:00
2007-07-16 09:05:50 -07:00
2007-07-16 09:05:47 -07:00
2007-05-09 12:30:56 -07:00
2007-05-21 09:18:19 -07:00
2007-07-17 10:23:03 -07:00
2007-07-13 14:14:28 +02:00
2007-07-16 09:05:49 -07:00
2007-07-16 09:05:49 -07:00
2007-07-16 09:05:49 -07:00
2007-07-09 18:51:58 +02:00
2007-07-16 09:05:50 -07:00
2007-07-16 09:05:43 -07:00
2007-07-18 08:47:40 -07:00
2007-07-18 08:47:40 -07:00
2007-07-16 09:05:48 -07:00
2007-07-16 09:05:47 -07:00
2007-05-09 08:57:56 +02:00
2007-07-17 10:23:03 -07:00