Prev: swap counters
Next: i686 quirk for AMD Geode
From: Dasgupta, Romit on 6 Nov 2009 04:40 Kicks out a frozen thread from the refrigerator when an active thread has invoked kthread_stop on the frozen thread. Signed-off-by: Romit Dasgupta <romit(a)ti.com> --- diff --git a/kernel/freezer.c b/kernel/freezer.c index bd1d42b..c28dbe8 100644 --- a/kernel/freezer.c +++ b/kernel/freezer.c @@ -9,6 +9,7 @@ #include <linux/module.h> #include <linux/syscalls.h> #include <linux/freezer.h> +#include <linux/kthread.h> /* * freezing is complete, mark current process as frozen @@ -49,7 +50,7 @@ void refrigerator(void) for (;;) { set_current_state(TASK_UNINTERRUPTIBLE); - if (!frozen(current)) + if (!frozen(current) || (!current->mm && kthread_should_stop())) break; schedule(); } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Pages: 1 Prev: swap counters Next: i686 quirk for AMD Geode |