Re: [PATCH] Fix migration of SCHED_DEADLINE tasks

Juri Lelli
2015-10-16T08:51:56Z

Hi,

On 16/10/15 09:03, Luca Abeni wrote:
> On 10/15/2015 06:40 PM, Juri Lelli wrote:
>> On 15/10/15 12:09, Luca Abeni wrote:
>>> Commit 9d5142624256 ("sched/deadline: Reduce rq lock contention by
>>> eliminating locking of non-feasible target") broke select_task_rq_dl()
> [...]
>>> - dl_time_before(p->dl.deadline,
>>> - cpu_rq(target)->dl.earliest_dl.curr))
>>> + (dl_time_before(p->dl.deadline,
>>> + cpu_rq(target)->dl.earliest_dl.curr) ||
>>> + (cpu_rq(target)->dl.earliest_dl.curr == 0)))
>>
>> Can't we actually use dl.dl_nr_running here and below, so
>> that we won't incur any wraparound problem?
> Ok, I tested the patch with dl.dl_nr_running and if works for me...
>
> I am going to send the updated patch in few minutes.
>

Thanks!

> BTW, should we also use "dl_rq->dl_nr_running == 0" instead of
> "dl_rq->earliest_dl.curr == 0" in inc_dl_deadline(), and remove the
> comment from init_dl_rq()? If you think it is a good idea, I'll test this
> additional change and send a patch in next week.
>

Yeah, it seems we need that fix too.

Best,

- Juri