[PATCH] sched: remove on runqueue requeueing

On runqueue time is used to elevate priority in schedule().

In the code it currently requeues tasks even if their priority is not
elevated, which would end up placing them at the end of their runqueue
array effectively delaying them instead of improving their priority.

Bug spotted by Mike Galbraith <[email protected]>

This patch removes this requeueing.

Signed-off-by: Con Kolivas <[email protected]>
Acked-by: Ingo Molnar <[email protected]>
Cc: Mike Galbraith <[email protected]>
Cc: Nick Piggin <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
Con Kolivas 2006-03-31 02:31:29 -08:00 • committed by Linus Torvalds
commit 7c4bb1f9b3

View file

@ -3023,8 +3023,7 @@ go_idle:
dequeue_task(next, array);
next->prio = new_prio;
enqueue_task(next, array);
} else
requeue_task(next, array);
}
}
next->sleep_type = SLEEP_NORMAL;
switch_tasks: