[PATCH] improve scheduler fairness a bit

Do not transfer remaining time slice to another cpu on process exit.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Oleg Nesterov 2005-11-04 18:54:30 +03:00 committed by Linus Torvalds
parent c8ebce6eeb
commit 889dfafe83

View file

@ -1468,7 +1468,7 @@ void fastcall sched_exit(task_t *p)
* the sleep_avg of the parent as well. * the sleep_avg of the parent as well.
*/ */
rq = task_rq_lock(p->parent, &flags); rq = task_rq_lock(p->parent, &flags);
if (p->first_time_slice) { if (p->first_time_slice && task_cpu(p) == task_cpu(p->parent)) {
p->parent->time_slice += p->time_slice; p->parent->time_slice += p->time_slice;
if (unlikely(p->parent->time_slice > task_timeslice(p))) if (unlikely(p->parent->time_slice > task_timeslice(p)))
p->parent->time_slice = task_timeslice(p); p->parent->time_slice = task_timeslice(p);