aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/exit.c
diff options
context:
space:
mode:
authorLaurent Vivier <Laurent.Vivier@bull.net>2007-10-15 11:00:19 -0400
committerIngo Molnar <mingo@elte.hu>2007-10-15 11:00:19 -0400
commit9ac52315d4cf5f561f36dabaf0720c00d3553162 (patch)
treeafe7284f34a65d2540fcb2a9b764834f9d790fa7 /kernel/exit.c
parent5e84cfde51cf303d368fcb48f22059f37b3872de (diff)
sched: guest CPU accounting: add guest-CPU /proc/<pid>/stat fields
like for cpustat, introduce the "gtime" (guest time of the task) and "cgtime" (guest time of the task children) fields for the tasks. Modify signal_struct and task_struct. Modify /proc/<pid>/stat to display these new fields. Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net> Acked-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/exit.c')
-rw-r--r--kernel/exit.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index 993369ee94d1..7f7959de4a87 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -111,6 +111,7 @@ static void __exit_signal(struct task_struct *tsk)
111 */ 111 */
112 sig->utime = cputime_add(sig->utime, tsk->utime); 112 sig->utime = cputime_add(sig->utime, tsk->utime);
113 sig->stime = cputime_add(sig->stime, tsk->stime); 113 sig->stime = cputime_add(sig->stime, tsk->stime);
114 sig->gtime = cputime_add(sig->gtime, tsk->gtime);
114 sig->min_flt += tsk->min_flt; 115 sig->min_flt += tsk->min_flt;
115 sig->maj_flt += tsk->maj_flt; 116 sig->maj_flt += tsk->maj_flt;
116 sig->nvcsw += tsk->nvcsw; 117 sig->nvcsw += tsk->nvcsw;
@@ -1242,6 +1243,11 @@ static int wait_task_zombie(struct task_struct *p, int noreap,
1242 cputime_add(p->stime, 1243 cputime_add(p->stime,
1243 cputime_add(sig->stime, 1244 cputime_add(sig->stime,
1244 sig->cstime))); 1245 sig->cstime)));
1246 psig->cgtime =
1247 cputime_add(psig->cgtime,
1248 cputime_add(p->gtime,
1249 cputime_add(sig->gtime,
1250 sig->cgtime)));
1245 psig->cmin_flt += 1251 psig->cmin_flt +=
1246 p->min_flt + sig->min_flt + sig->cmin_flt; 1252 p->min_flt + sig->min_flt + sig->cmin_flt;
1247 psig->cmaj_flt += 1253 psig->cmaj_flt +=