Messages in this thread Patch in this message | | | Date | Fri, 3 Jun 2011 22:06:54 +0800 | Subject | [PATCH] sched: select eligible run-queue for RT task | From | Hillf Danton <> |
| |
When selecting run-queue for a given task, eligible run-queue should be returned by checking the CPU affinity of task.
Signed-off-by: Hillf Danton <dhillf@gmail.com> --- kernel/sched_rt.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index 88725c9..45b3e0a 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c @@ -1006,7 +1006,8 @@ select_task_rq_rt(struct task_struct *p, int sd_flag, int flags) int cpu;
if (sd_flag != SD_BALANCE_WAKE) - return smp_processor_id(); + return cpumask_test_cpu(smp_processor_id(), &p->cpus_allowed) ? + smp_processor_id() : task_cpu(p);
cpu = task_cpu(p); rq = cpu_rq(cpu);
| |