patch-2.4.0-test5 linux/fs/proc/proc_misc.c
Next file: linux/fs/qnx4/inode.c
Previous file: linux/fs/partitions/msdos.c
Back to the patch index
Back to the overall index
- Lines: 31
- Date:
Tue Jul 25 18:13:14 2000
- Orig file:
v2.4.0-test4/linux/fs/proc/proc_misc.c
- Orig date:
Mon Jul 10 16:47:26 2000
diff -u --recursive --new-file v2.4.0-test4/linux/fs/proc/proc_misc.c linux/fs/proc/proc_misc.c
@@ -287,18 +287,21 @@
int i, len;
extern unsigned long total_forks;
unsigned long jif = jiffies;
- unsigned sum = 0;
+ unsigned int sum = 0, user = 0, nice = 0, system = 0;
int major, disk;
- for (i = 0 ; i < NR_IRQS ; i++)
- sum += kstat_irqs(i);
+ for (i = 0 ; i < smp_num_cpus; i++) {
+ int cpu = cpu_logical_map(i), j;
- len = sprintf(page,
- "cpu %u %u %u %lu\n",
- kstat.cpu_user,
- kstat.cpu_nice,
- kstat.cpu_system,
- jif*smp_num_cpus - (kstat.cpu_user + kstat.cpu_nice + kstat.cpu_system));
+ user += kstat.per_cpu_user[cpu];
+ nice += kstat.per_cpu_nice[cpu];
+ system += kstat.per_cpu_system[cpu];
+ for (j = 0 ; j < NR_IRQS ; j++)
+ sum += kstat.irqs[cpu][j];
+ }
+
+ len = sprintf(page, "cpu %u %u %u %lu\n", user, nice, system,
+ jif * smp_num_cpus - (user + nice + system));
for (i = 0 ; i < smp_num_cpus; i++)
len += sprintf(page + len, "cpu%d %u %u %u %lu\n",
i,
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)