--- linux-2.6.0-test2-mm1/kernel/sched.c 2003-07-30 20:26:08.000000000 +1000 +++ linux-2.6.0-test2mm1O11/kernel/sched.c 2003-07-30 20:26:45.000000000 +1000 @@ -1292,16 +1292,7 @@ void scheduler_tick(int user_ticks, int if (!TASK_INTERACTIVE(p) || EXPIRED_STARVING(rq)) { if (!rq->expired_timestamp) rq->expired_timestamp = jiffies; - /* - * Long term interactive tasks need to completely - * run out of sleep_avg to be expired, and when they - * do they are put at the start of the expired array - */ - if (unlikely(p->interactive_credit && p->sleep_avg)){ - enqueue_task(p, rq->active); - goto out_unlock; - } - enqueue_task(p, rq->expired); + enqueue_task(p, rq->expired); } else enqueue_task(p, rq->active); } else if (p->mm && !((task_timeslice(p) - p->time_slice) %