diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-24 20:04:24 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-24 20:04:24 +0400 |
commit | 7ca263cdf8cf74d0f1c6f48d07d556de92e3bec9 (patch) | |
tree | 409ed34476208f714e0d4c529a642d8fd21feaa5 /fs/proc | |
parent | a6b49cb210f878709bdc0bddc16a853f18790d02 (diff) | |
parent | 96830a57de1197519b62af6a4c9ceea556c18c3d (diff) | |
download | linux-7ca263cdf8cf74d0f1c6f48d07d556de92e3bec9.tar.xz |
Merge branch 'cputime' of git://git390.marist.edu/pub/scm/linux-2.6
* 'cputime' of git://git390.marist.edu/pub/scm/linux-2.6:
[PATCH] Fix idle time field in /proc/uptime
Diffstat (limited to 'fs/proc')
-rw-r--r-- | fs/proc/uptime.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/proc/uptime.c b/fs/proc/uptime.c index 0c10a0b3f146..766b1d456050 100644 --- a/fs/proc/uptime.c +++ b/fs/proc/uptime.c @@ -4,13 +4,18 @@ #include <linux/sched.h> #include <linux/seq_file.h> #include <linux/time.h> +#include <linux/kernel_stat.h> #include <asm/cputime.h> static int uptime_proc_show(struct seq_file *m, void *v) { struct timespec uptime; struct timespec idle; - cputime_t idletime = cputime_add(init_task.utime, init_task.stime); + int i; + cputime_t idletime = cputime_zero; + + for_each_possible_cpu(i) + idletime = cputime64_add(idletime, kstat_cpu(i).cpustat.idle); do_posix_clock_monotonic_gettime(&uptime); monotonic_to_bootbased(&uptime); |