On Wednesday, 7 of May 2008, Matthew Wilcox wrote: > On Wed, May 07, 2008 at 12:07:55AM +0200, Rafael J. Wysocki wrote: > > The introduction of TASK_KILLABLE allows the freezer to work in some situation > > that it could not handle before. > > > > Make the freezer handle killable tasks and add try_to_freeze() in some places > > where it is safe to freeze a (killable) task. Introduce the > > wait_event_killable_freezable() macro to be used wherever the freezing of > > a waiting killable task is desirable. > > Why do you say that TASK_KILLABLE allows the freezer to work in some > situations where it couldn't before? If something's using one of the > killable functions, it means that it knows how to clean up and unwind > gracefully if the task receives a fatal signal. I don't understand what > connection there is to the freezer. The reason why we don't freeze uninterruptible tasks is that we don't know why they are in that state. If one of tasks is uninterruptible for a relatively long time, that may indicate a non-recoverable error making it dangerous to put the system into a sleep state. If the task is killable, though, the situation is recoverable. Thanks, Rafael _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm