From: Ingo Molnar This very simple patch temporarily turns off the array-switching within the current scheduler. This yields an unfair scheduler (higher-prio CPU loops can starve lower-prio CPU loops indefinitely), but it gives us most of the benefits of a single array and gives us a chance to test the effects in isolation. It would be nice if people could test: basic interactivity and various SMP/NUMA workloads such as SDET. Signed-off-by: Andrew Morton Index: linux-2.6.8-rc3-mm2/kernel/sched.c =================================================================== --- linux-2.6.8-rc3-mm2.orig/kernel/sched.c 2004-08-09 09:44:57.853589855 +1000 +++ linux-2.6.8-rc3-mm2/kernel/sched.c 2004-08-09 09:48:18.758190366 +1000 @@ -2450,11 +2450,7 @@ if (!rq->expired_timestamp) rq->expired_timestamp = jiffies; - /* - * Disable array switching temporarily to investigate - * the effects (note that this doesnt guarantee fairness): - */ - if (0 && (!TASK_INTERACTIVE(p) || EXPIRED_STARVING(rq))) { + if (!TASK_INTERACTIVE(p) || EXPIRED_STARVING(rq)) { enqueue_task(p, rq->expired); if (p->static_prio < rq->best_expired_prio) rq->best_expired_prio = p->static_prio;