diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index aa13d6a55721..d28180b44322 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -28,6 +28,7 @@ #include <linux/kernel_stat.h> #include <linux/security.h> #include <linux/notifier.h> +#include <linux/blkdev.h> #include <linux/delay.h> #include <linux/timer.h> @@ -866,6 +867,10 @@ void scheduler_tick(int user_ticks, int sys_ticks) /* note: this timer irq context must be accounted for as well */ if (irq_count() - HARDIRQ_OFFSET >= SOFTIRQ_OFFSET) kstat.per_cpu_system[cpu] += sys_ticks; + else if (atomic_read(&nr_iowait_tasks) > 0) + kstat.per_cpu_iowait[cpu] += sys_ticks; + else + kstat.per_cpu_idle[cpu] += sys_ticks; #if CONFIG_SMP idle_tick(rq); #endif |
