aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorCon Kolivas <kernel@kolivas.org>2005-01-07 21:46:30 -0800
committerLinus Torvalds <torvalds@evo.osdl.org>2005-01-07 21:46:30 -0800
commitf832cc632479a6ad4a0b59c5b53de12ae601dc40 (patch)
tree707fd239bb489b48ded5423f1e6bb6a14b52536c /kernel
parent482288d8785689476c947b9c65e642c540ca2e4f (diff)
downloadhistory-f832cc632479a6ad4a0b59c5b53de12ae601dc40.tar.gz
[PATCH] sched: requeue_granularity
Change the granularity code to requeue tasks at their best priority instead of changing priority while they're running. This keeps tasks at their top interactive level during their whole timeslice. Signed-off-by: Con Kolivas <kernel@kolivas.org> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/kernel/sched.c b/kernel/sched.c
index 225193a8a4713e..7af48c82737f26 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2398,10 +2398,8 @@ void scheduler_tick(int user_ticks, int sys_ticks)
(p->time_slice >= TIMESLICE_GRANULARITY(p)) &&
(p->array == rq->active)) {
- dequeue_task(p, rq->active);
+ requeue_task(p, rq->active);
set_tsk_need_resched(p);
- p->prio = effective_prio(p);
- enqueue_task(p, rq->active);
}
}
out_unlock: