diff options
author | 2024-09-18 08:31:57 +0200 | |
---|---|---|
committer | 2024-09-18 08:31:57 +0200 | |
commit | 6d450d120f0a9f661cd78cfa4bcdf5c6e31e4b31 (patch) | |
tree | c6497a19afc2ebbb74b8f2650855519a171e811c | |
parent | Merge tag 'kcsan.2024.09.14a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu (diff) | |
parent | exit: Sleep at TASK_IDLE when waiting for application core dump (diff) | |
download | wireguard-linux-6d450d120f0a9f661cd78cfa4bcdf5c6e31e4b31.tar.xz wireguard-linux-6d450d120f0a9f661cd78cfa4bcdf5c6e31e4b31.zip |
Merge tag 'misc.2024.09.14a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu
Pull core dump update from Paul McKenney:
"Sleep at TASK_IDLE when waiting for application core dump
This causes the coredump_task_exit() function to sleep at TASK_IDLE,
thus preventing task-blocked splats in case of large core dumps to
slow devices"
* tag 'misc.2024.09.14a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
exit: Sleep at TASK_IDLE when waiting for application core dump
Diffstat (limited to '')
-rw-r--r-- | kernel/exit.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/exit.c b/kernel/exit.c index 7430852a8571..0d62a53605df 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -428,7 +428,7 @@ static void coredump_task_exit(struct task_struct *tsk) complete(&core_state->startup); for (;;) { - set_current_state(TASK_UNINTERRUPTIBLE|TASK_FREEZABLE); + set_current_state(TASK_IDLE|TASK_FREEZABLE); if (!self.task) /* see coredump_finish() */ break; schedule(); |