[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20150106021458.GA24813@kernel>
Date: Tue, 6 Jan 2015 10:14:58 +0800
From: Wanpeng Li <wanpeng.li@...ux.intel.com>
To: Peter Zijlstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@....com>
Cc: Wanpeng Li <wanpeng.li@...ux.intel.com>,
Ingo Molnar <mingo@...hat.com>,
Kirill Tkhai <ktkhai@...allels.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5] sched/deadline: support dl task migration during cpu
hotplug
Hi Peter,
On Mon, Jan 05, 2015 at 03:52:10PM +0100, Peter Zijlstra wrote:
>On Wed, Nov 12, 2014 at 04:39:06PM +0100, Peter Zijlstra wrote:
>> On Wed, Nov 12, 2014 at 03:08:44PM +0000, Juri Lelli wrote:
>> > > @@ -1185,8 +1223,9 @@ static int find_later_rq(struct task_struct *task)
>> > > * We have to consider system topology and task affinity
>> > > * first, then we can look for a suitable cpu.
>> > > */
>> > > - cpumask_copy(later_mask, task_rq(task)->rd->span);
>> > > - cpumask_and(later_mask, later_mask, cpu_active_mask);
>> > > + cpumask_copy(later_mask, cpu_active_mask);
>> > > + if (likely(task_rq(task)->online))
>> > > + cpumask_and(later_mask, later_mask, task_rq(task)->rd->span);
>> >
>> > So, here you consider the span only when the task_rq is online,
>> > but there might be others cpus still online belonging to the same
>> > rd->span. And you have to consider them when migrating. Actually,
>> > migration must still be restricted to the online cpus of task's
>> > original rd->span, or I fear you can break clustered scheduling.
>>
>> Ah, good point that, we must somehow find the right root domain to
>> 'restore' the task to. Now I'm not entirely sure we still have this.
>> Lemme ponder that.
>
>Ah, we should be able to find this by looking at the cpuset cgroup
>information. The cpuset cgroup knows the available cpumask of this task,
>which we can translate to the correct root domain in two separate ways
>(either run up the cpuset cgroup hierarchy and find the highest domain
>with balancing enabled, or look at whatever the rq->rd is for any one of
>the allowed CPUs of the immediate cgroup this task belongs to).
If the patch Juri pointed out can help to skip the issue?
https://lkml.org/lkml/2014/11/19/293
Regards,
Wanpeng Li
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists