sched: RT balancing: include current CPU
It doesn't hurt if we allow the current CPU to be included in the search. We will just simply skip it later if the current CPU turns out to be the lowest. We will use this later in the series Signed-off-by: Gregory Haskins <ghaskins@novell.com> Signed-off-by: Steven Rostedt <srostedt@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
07b4032c9e
commit
2de0b4639f
1 changed files with 1 additions and 4 deletions
|
@ -277,9 +277,6 @@ static int find_lowest_rq(struct task_struct *task)
|
||||||
for_each_cpu_mask(cpu, *cpu_mask) {
|
for_each_cpu_mask(cpu, *cpu_mask) {
|
||||||
struct rq *rq = cpu_rq(cpu);
|
struct rq *rq = cpu_rq(cpu);
|
||||||
|
|
||||||
if (cpu == rq->cpu)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
/* We look for lowest RT prio or non-rt CPU */
|
/* We look for lowest RT prio or non-rt CPU */
|
||||||
if (rq->rt.highest_prio >= MAX_RT_PRIO) {
|
if (rq->rt.highest_prio >= MAX_RT_PRIO) {
|
||||||
lowest_rq = rq;
|
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++) {
|
for (tries = 0; tries < RT_MAX_TRIES; tries++) {
|
||||||
cpu = find_lowest_rq(task);
|
cpu = find_lowest_rq(task);
|
||||||
|
|
||||||
if (cpu == -1)
|
if ((cpu == -1) || (cpu == rq->cpu))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
lowest_rq = cpu_rq(cpu);
|
lowest_rq = cpu_rq(cpu);
|
||||||
|
|
Loading…
Reference in a new issue