|
@@ -443,6 +443,7 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
int i;
|
|
|
unsigned long jif;
|
|
|
cputime64_t user, nice, system, idle, iowait, irq, softirq, steal;
|
|
|
+ cputime64_t guest;
|
|
|
u64 sum = 0;
|
|
|
struct timespec boottime;
|
|
|
unsigned int *per_irq_sum;
|
|
@@ -453,6 +454,7 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
|
|
|
user = nice = system = idle = iowait =
|
|
|
irq = softirq = steal = cputime64_zero;
|
|
|
+ guest = cputime64_zero;
|
|
|
getboottime(&boottime);
|
|
|
jif = boottime.tv_sec;
|
|
|
|
|
@@ -467,6 +469,7 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
irq = cputime64_add(irq, kstat_cpu(i).cpustat.irq);
|
|
|
softirq = cputime64_add(softirq, kstat_cpu(i).cpustat.softirq);
|
|
|
steal = cputime64_add(steal, kstat_cpu(i).cpustat.steal);
|
|
|
+ guest = cputime64_add(guest, kstat_cpu(i).cpustat.guest);
|
|
|
for (j = 0; j < NR_IRQS; j++) {
|
|
|
unsigned int temp = kstat_cpu(i).irqs[j];
|
|
|
sum += temp;
|
|
@@ -474,7 +477,7 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- seq_printf(p, "cpu %llu %llu %llu %llu %llu %llu %llu %llu\n",
|
|
|
+ seq_printf(p, "cpu %llu %llu %llu %llu %llu %llu %llu %llu %llu\n",
|
|
|
(unsigned long long)cputime64_to_clock_t(user),
|
|
|
(unsigned long long)cputime64_to_clock_t(nice),
|
|
|
(unsigned long long)cputime64_to_clock_t(system),
|
|
@@ -482,7 +485,8 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
(unsigned long long)cputime64_to_clock_t(iowait),
|
|
|
(unsigned long long)cputime64_to_clock_t(irq),
|
|
|
(unsigned long long)cputime64_to_clock_t(softirq),
|
|
|
- (unsigned long long)cputime64_to_clock_t(steal));
|
|
|
+ (unsigned long long)cputime64_to_clock_t(steal),
|
|
|
+ (unsigned long long)cputime64_to_clock_t(guest));
|
|
|
for_each_online_cpu(i) {
|
|
|
|
|
|
/* Copy values here to work around gcc-2.95.3, gcc-2.96 */
|
|
@@ -494,7 +498,9 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
irq = kstat_cpu(i).cpustat.irq;
|
|
|
softirq = kstat_cpu(i).cpustat.softirq;
|
|
|
steal = kstat_cpu(i).cpustat.steal;
|
|
|
- seq_printf(p, "cpu%d %llu %llu %llu %llu %llu %llu %llu %llu\n",
|
|
|
+ guest = kstat_cpu(i).cpustat.guest;
|
|
|
+ seq_printf(p,
|
|
|
+ "cpu%d %llu %llu %llu %llu %llu %llu %llu %llu %llu\n",
|
|
|
i,
|
|
|
(unsigned long long)cputime64_to_clock_t(user),
|
|
|
(unsigned long long)cputime64_to_clock_t(nice),
|
|
@@ -503,7 +509,8 @@ static int show_stat(struct seq_file *p, void *v)
|
|
|
(unsigned long long)cputime64_to_clock_t(iowait),
|
|
|
(unsigned long long)cputime64_to_clock_t(irq),
|
|
|
(unsigned long long)cputime64_to_clock_t(softirq),
|
|
|
- (unsigned long long)cputime64_to_clock_t(steal));
|
|
|
+ (unsigned long long)cputime64_to_clock_t(steal),
|
|
|
+ (unsigned long long)cputime64_to_clock_t(guest));
|
|
|
}
|
|
|
seq_printf(p, "intr %llu", (unsigned long long)sum);
|
|
|
|