]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - kernel/sched.c
[PATCH] sched: reduce overhead of calc_load
[linux-2.6-omap-h63xx.git] / kernel / sched.c
index a9ecac398bb9b979a4457ea0ade69259c9e7dc53..6e52e0adff80dfc04fa921dd88a0df7bce8a4a2a 100644 (file)
@@ -1658,6 +1658,21 @@ unsigned long nr_iowait(void)
        return sum;
 }
 
+unsigned long nr_active(void)
+{
+       unsigned long i, running = 0, uninterruptible = 0;
+
+       for_each_online_cpu(i) {
+               running += cpu_rq(i)->nr_running;
+               uninterruptible += cpu_rq(i)->nr_uninterruptible;
+       }
+
+       if (unlikely((long)uninterruptible < 0))
+               uninterruptible = 0;
+
+       return running + uninterruptible;
+}
+
 #ifdef CONFIG_SMP
 
 /*