diff options
author | Dmitry Adamushko <dmitry.adamushko@gmail.com> | 2007-11-15 14:57:40 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2007-11-15 14:57:40 -0500 |
commit | 94bc9a7bd97efdda4dfbe61d0df32ce19d41c0a9 (patch) | |
tree | ac684740f71e1e6dcfbb70b3d466c952f8f4072e /kernel/sched.c | |
parent | ce96b5ac742801718ae86d2adf0500c5abef3782 (diff) |
sched: remove activate_idle_task()
cpu_down() code is ok wrt sched_idle_next() placing the 'idle' task not
at the beginning of the queue.
So get rid of activate_idle_task() and make use of activate_task() instead.
It is the same as activate_task(), except for the update_rq_clock(rq) call
that is redundant.
Code size goes down:
text data bss dec hex filename
47853 3934 336 52123 cb9b sched.o.before
47828 3934 336 52098 cb82 sched.o.after
Signed-off-by: Dmitry Adamushko <dmitry.adamushko@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index db1f71e31310..cc8cb6f7d82e 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -5282,23 +5282,9 @@ static void migrate_live_tasks(int src_cpu) | |||
5282 | } | 5282 | } |
5283 | 5283 | ||
5284 | /* | 5284 | /* |
5285 | * activate_idle_task - move idle task to the _front_ of runqueue. | ||
5286 | */ | ||
5287 | static void activate_idle_task(struct task_struct *p, struct rq *rq) | ||
5288 | { | ||
5289 | update_rq_clock(rq); | ||
5290 | |||
5291 | if (p->state == TASK_UNINTERRUPTIBLE) | ||
5292 | rq->nr_uninterruptible--; | ||
5293 | |||
5294 | enqueue_task(rq, p, 0); | ||
5295 | inc_nr_running(p, rq); | ||
5296 | } | ||
5297 | |||
5298 | /* | ||
5299 | * Schedules idle task to be the next runnable task on current CPU. | 5285 | * Schedules idle task to be the next runnable task on current CPU. |
5300 | * It does so by boosting its priority to highest possible and adding it to | 5286 | * It does so by boosting its priority to highest possible. |
5301 | * the _front_ of the runqueue. Used by CPU offline code. | 5287 | * Used by CPU offline code. |
5302 | */ | 5288 | */ |
5303 | void sched_idle_next(void) | 5289 | void sched_idle_next(void) |
5304 | { | 5290 | { |
@@ -5318,8 +5304,8 @@ void sched_idle_next(void) | |||
5318 | 5304 | ||
5319 | __setscheduler(rq, p, SCHED_FIFO, MAX_RT_PRIO-1); | 5305 | __setscheduler(rq, p, SCHED_FIFO, MAX_RT_PRIO-1); |
5320 | 5306 | ||
5321 | /* Add idle task to the _front_ of its priority queue: */ | 5307 | update_rq_clock(rq); |
5322 | activate_idle_task(p, rq); | 5308 | activate_task(rq, p, 0); |
5323 | 5309 | ||
5324 | spin_unlock_irqrestore(&rq->lock, flags); | 5310 | spin_unlock_irqrestore(&rq->lock, flags); |
5325 | } | 5311 | } |