Re: [PATCH] sched: correct how RT task is picked
From: Yong Zhang
Date: Wed May 18 2011 - 21:44:27 EST
On Thu, May 19, 2011 at 9:41 AM, Yong Zhang <yong.zhang0@xxxxxxxxx> wrote:
> On Wed, May 18, 2011 at 10:46 PM, Hillf Danton <dhillf@xxxxxxxxx> wrote:
>> On Wed, May 18, 2011 at 9:24 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>>> On Wed, 2011-05-18 at 21:19 +0800, Hillf Danton wrote:
>>>> Hi all
>>>> The patch is prepared again, in which tests for both cpu and
>>>> nr_cpus_allowed are dropped.
>>>> The reason to drop nr_cpus_allowed is to make sure that the
>>>> returned value is correct for both case that cpu == rq->cpu and
>>>> case that cpu != rq->cpu.
>>> Why would we pick a task that can't migrate?
>> Hi Steven
>> For migration, it is the case that cpu != rq->cpu, and
>> if cpu is allowed by task's affinity, it is bug that task
>> could not goto cpu because of nr_cpus_allowed since
>> the nr_cpus_allowed is computed based on the cpus_allowed mask.
> But for next_prio(), we just calculate the next highest migratible task
> for a rq regardless on which cpu that task will run, say we let cpu=rq->cpu
> to be second parameter of pick_next_highest_task_rt(), IOW, it has
> the same effect as cpu = -1
That means we could get a bound task's priority for the rt_rq's next highest
> Only stand for myself
Only stand for myself
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/