Index: linux-2.6.19-rc2-mm1/kernel/sched.c =================================================================== --- linux-2.6.19-rc2-mm1.orig/kernel/sched.c 2006-10-20 15:10:01.538087742 -0500 +++ linux-2.6.19-rc2-mm1/kernel/sched.c 2006-10-20 15:13:42.427237455 -0500 @@ -2846,7 +2846,11 @@ static void rebalance_tick(unsigned long struct sched_domain *sd; int i, scale; - idle = (current == this_rq->idle) ? SCHED_IDLE : NOT_IDLE; + /* + * A queue is only truely idle if it is the idle queue and no task is runnable + */ + idle = (current == this_rq->idle && !this_rq->nr_running) ? + SCHED_IDLE : NOT_IDLE; this_load = this_rq->raw_weighted_load; /* Update our load: */