sched/dl: Simplify pick_dl_task()
authorKirill Tkhai <ktkhai@parallels.com>
Fri, 12 Sep 2014 13:42:20 +0000 (17:42 +0400)
committerIngo Molnar <mingo@kernel.org>
Fri, 19 Sep 2014 10:35:20 +0000 (12:35 +0200)
1) Nobody calls pick_dl_task() with negative cpu, it's old RT leftover.

2) If p->nr_cpus_allowed is 1, than the affinity has just been changed
  in set_cpus_allowed_ptr(); we'll pick it just earlier than migration
  thread.

Signed-off-by: Kirill Tkhai <ktkhai@parallels.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1410529340.3569.27.camel@tkhai
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/deadline.c

index cc4eb89019c18d8dc14f1cba737a7728f8d4282b..aaa5abbff2f1d86a515bf3a2662fd053b6035cd4 100644 (file)
@@ -1121,10 +1121,8 @@ static void set_curr_task_dl(struct rq *rq)
 static int pick_dl_task(struct rq *rq, struct task_struct *p, int cpu)
 {
        if (!task_running(rq, p) &&
-           (cpu < 0 || cpumask_test_cpu(cpu, &p->cpus_allowed)) &&
-           (p->nr_cpus_allowed > 1))
+           cpumask_test_cpu(cpu, tsk_cpus_allowed(p)))
                return 1;
-
        return 0;
 }