summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/kern_exit.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c
index ec9a529..5785e0b 100644
--- a/sys/kern/kern_exit.c
+++ b/sys/kern/kern_exit.c
@@ -540,8 +540,6 @@ retry:
p->p_state = PRS_ZOMBIE;
PROC_UNLOCK(p->p_pptr);
- ruadd(p->p_ru, &p->p_rux, &p->p_stats->p_cru, &p->p_crux);
-
/* Do the same timestamp bookkeeping that mi_switch() would do. */
new_switchtime = cpu_ticks();
p->p_rux.rux_runtime += (new_switchtime - PCPU_GET(switchtime));
@@ -552,6 +550,9 @@ retry:
PCPU_SET(switchticks, ticks);
cnt.v_swtch++;
+ /* Add our usage into the usage of all our children. */
+ ruadd(p->p_ru, &p->p_rux, &p->p_stats->p_cru, &p->p_crux);
+
sched_exit(p->p_pptr, td);
/*
OpenPOWER on IntegriCloud