| From 290e5349b6b1b9b0fbaca36577ee221b6f69e4ef Mon Sep 17 00:00:00 2001 |
| From: Thomas Gleixner <tglx@linutronix.de> |
| Date: Fri, 3 Jul 2009 08:29:18 -0500 |
| Subject: [PATCH] sched: revert schedule/__schedule changes |
| |
| commit 8ce08b9d0ea42371e1c6159debc23dde5282211c in tip. |
| |
| RT wants that disctinction for now. We need to revisit this. |
| |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| --- |
| kernel/sched.c | 10 +++++++--- |
| 1 files changed, 7 insertions(+), 3 deletions(-) |
| |
| diff --git a/kernel/sched.c b/kernel/sched.c |
| index 1c38248..13dfb38 100644 |
| --- a/kernel/sched.c |
| +++ b/kernel/sched.c |
| @@ -3711,15 +3711,13 @@ pick_next_task(struct rq *rq) |
| /* |
| * schedule() is the main scheduler function. |
| */ |
| -asmlinkage void __sched schedule(void) |
| +asmlinkage void __sched __schedule(void) |
| { |
| struct task_struct *prev, *next; |
| unsigned long *switch_count; |
| struct rq *rq; |
| int cpu; |
| |
| -need_resched: |
| - preempt_disable(); |
| cpu = smp_processor_id(); |
| rq = cpu_rq(cpu); |
| rcu_sched_qs(cpu); |
| @@ -3779,7 +3777,13 @@ need_resched_nonpreemptible: |
| switch_count = &prev->nivcsw; |
| goto need_resched_nonpreemptible; |
| } |
| +} |
| |
| +asmlinkage void __sched schedule(void) |
| +{ |
| +need_resched: |
| + preempt_disable(); |
| + __schedule(); |
| __preempt_enable_no_resched(); |
| if (need_resched()) |
| goto need_resched; |
| -- |
| 1.7.0.4 |
| |