From: Oleg Nesterov schedule() can use prev instead of get_current(). Signed-off-by: Oleg Nesterov Acked-by: Ingo Molnar Signed-off-by: Andrew Morton --- 25-akpm/kernel/sched.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff -puN kernel/sched.c~sched-use-cached-current-value kernel/sched.c --- 25/kernel/sched.c~sched-use-cached-current-value 2004-11-17 20:46:33.248303008 -0800 +++ 25-akpm/kernel/sched.c 2004-11-17 20:46:33.255301944 -0800 @@ -2551,7 +2551,7 @@ need_resched_nonpreemptible: * The idle thread is not allowed to schedule! * Remove this check after it has been exercised a bit. */ - if (unlikely(current == rq->idle) && current->state != TASK_RUNNING) { + if (unlikely(prev == rq->idle) && prev->state != TASK_RUNNING) { printk(KERN_ERR "bad: scheduling from the idle thread!\n"); dump_stack(); } @@ -2571,8 +2571,8 @@ need_resched_nonpreemptible: spin_lock_irq(&rq->lock); - if (unlikely(current->flags & PF_DEAD)) - current->state = EXIT_DEAD; + if (unlikely(prev->flags & PF_DEAD)) + prev->state = EXIT_DEAD; /* * if entering off of a kernel preemption go straight * to picking the next task. _