Prevents hung_task detector from panicing the machine. This is also
needed to prevent this wait from blocking suspend.

(It doesnt' currently block suspend but it would once the next
patch in this series is applied.)

Signed-off-by: Mandeep Singh Baines <m...@chromium.org>
CC: Oleg Nesterov <o...@redhat.com>
CC: Tejun Heo <t...@kernel.org>
CC: Andrew Morton <a...@linux-foundation.org>
CC: Rafael J. Wysocki <r...@sisk.pl>
CC: Ingo Molnar <mi...@redhat.com>
---
 kernel/exit.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/kernel/exit.c b/kernel/exit.c
index f215198..04d9db0 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -20,6 +20,7 @@
 #include <linux/tsacct_kern.h>
 #include <linux/file.h>
 #include <linux/fdtable.h>
+#include <linux/freezer.h>
 #include <linux/binfmts.h>
 #include <linux/nsproxy.h>
 #include <linux/pid_namespace.h>
@@ -481,7 +482,7 @@ static void exit_mm(struct task_struct * tsk)
 
                set_task_state(tsk, TASK_UNINTERRUPTIBLE);
                if (self.task) /* see coredump_finish() */
-                       schedule();
+                       freezable_schedule();
                __set_task_state(tsk, TASK_RUNNING);
                down_read(&mm->mmap_sem);
        }
-- 
1.8.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to