summaryrefslogtreecommitdiffstats
path: root/kernel/exit.c
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@redhat.com>2014-04-08 00:38:30 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2014-04-08 01:36:04 +0200
commit4bcb8232cf4eb061b086c10f56b6808adcdb5a93 (patch)
tree808dd52c0e2addd49d1af7c4d51d1946c5477743 /kernel/exit.c
parentexit: call disassociate_ctty() before exit_task_namespaces() (diff)
downloadlinux-4bcb8232cf4eb061b086c10f56b6808adcdb5a93.tar.xz
linux-4bcb8232cf4eb061b086c10f56b6808adcdb5a93.zip
exit: move check_stack_usage() to the end of do_exit()
It is not clear why check_stack_usage() is called so early and thus it never checks the stack usage in, say, exit_notify() or flush_ptrace_hw_breakpoint() or other functions which are only called by do_exit(). Move the callsite down to the last preempt_disable/schedule. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/exit.c')
-rw-r--r--kernel/exit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index 11f9e39a7368..171c9a9d7b00 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -788,7 +788,6 @@ void do_exit(long code)
disassociate_ctty(1);
exit_task_namespaces(tsk);
exit_task_work(tsk);
- check_stack_usage();
exit_thread();
/*
@@ -842,6 +841,7 @@ void do_exit(long code)
validate_creds_for_do_exit(tsk);
+ check_stack_usage();
preempt_disable();
if (tsk->nr_dirtied)
__this_cpu_add(dirty_throttle_leaks, tsk->nr_dirtied);