summaryrefslogtreecommitdiff
path: root/kernel/exit.c
diff options
context:
space:
mode:
authorKyle McMartin <kyle@parisc-linux.org>2005-10-28 12:18:07 -0400
committerKyle McMartin <kyle@parisc-linux.org>2005-10-28 12:18:07 -0400
commit210cc679faf0e1cabda9fc5d1279644f5e52aecb (patch)
treef0816c90ae937a159f8bfec6018a6271223b954a /kernel/exit.c
parente0f998930eb67c49f2862c58a45262ad0bc03eca (diff)
parent260b23674fdb570f3235ce55892246bef1c24c2a (diff)
Auto-update from upstream
Diffstat (limited to 'kernel/exit.c')
-rw-r--r--kernel/exit.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index 4897977a1f4b..3b25b182d2be 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -825,6 +825,14 @@ fastcall NORET_TYPE void do_exit(long code)
tsk->flags |= PF_EXITING;
+ /*
+ * Make sure we don't try to process any timer firings
+ * while we are already exiting.
+ */
+ tsk->it_virt_expires = cputime_zero;
+ tsk->it_prof_expires = cputime_zero;
+ tsk->it_sched_expires = 0;
+
if (unlikely(in_atomic()))
printk(KERN_INFO "note: %s[%d] exited with preempt_count %d\n",
current->comm, current->pid,