|
@@ -277,9 +277,6 @@ static int find_lowest_rq(struct task_struct *task)
|
|
|
for_each_cpu_mask(cpu, *cpu_mask) {
|
|
|
struct rq *rq = cpu_rq(cpu);
|
|
|
|
|
|
- if (cpu == rq->cpu)
|
|
|
- continue;
|
|
|
-
|
|
|
/* We look for lowest RT prio or non-rt CPU */
|
|
|
if (rq->rt.highest_prio >= MAX_RT_PRIO) {
|
|
|
lowest_rq = rq;
|
|
@@ -307,7 +304,7 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task,
|
|
|
for (tries = 0; tries < RT_MAX_TRIES; tries++) {
|
|
|
cpu = find_lowest_rq(task);
|
|
|
|
|
|
- if (cpu == -1)
|
|
|
+ if ((cpu == -1) || (cpu == rq->cpu))
|
|
|
break;
|
|
|
|
|
|
lowest_rq = cpu_rq(cpu);
|