Please fold into original -rt2 patches as appropriate Signed-off-by: Gregory Haskins <ghaskins@xxxxxxxxxx> --- kernel/sched_rt.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-) diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index 55da7d0..b59dc20 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c @@ -292,7 +292,6 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, { struct rq *lowest_rq = NULL; cpumask_t cpu_mask; - int dst_cpu = -1; int cpu; int tries; @@ -311,14 +310,12 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, /* We look for lowest RT prio or non-rt CPU */ if (rq->rt.highest_prio >= MAX_RT_PRIO) { lowest_rq = rq; - dst_cpu = cpu; break; } /* no locking for now */ if (rq->rt.highest_prio > task->prio && (!lowest_rq || rq->rt.highest_prio > lowest_rq->rt.highest_prio)) { - dst_cpu = cpu; lowest_rq = rq; } } @@ -335,7 +332,7 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, * Also make sure that it wasn't scheduled on its rq. */ if (unlikely(task_rq(task) != this_rq || - !cpu_isset(dst_cpu, task->cpus_allowed) || + !cpu_isset(lowest_rq->cpu, task->cpus_allowed) || task_running(this_rq, task) || !task->se.on_rq)) { spin_unlock(&lowest_rq->lock); @@ -365,7 +362,6 @@ static int push_rt_task(struct rq *this_rq) { struct task_struct *next_task; struct rq *lowest_rq; - int dst_cpu; int ret = 0; int paranoid = RT_MAX_TRIES; @@ -412,12 +408,10 @@ static int push_rt_task(struct rq *this_rq) goto out; } - dst_cpu = lowest_rq->cpu; - assert_spin_locked(&lowest_rq->lock); deactivate_task(this_rq, next_task, 0); - set_task_cpu(next_task, dst_cpu); + set_task_cpu(next_task, lowest_rq->cpu); activate_task(lowest_rq, next_task, 0); resched_task(lowest_rq->curr); - To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html