Re: [PATCH] Fix migration of SCHED_DEADLINE tasks

Luca Abeni
2015-10-16T08:03:59Z

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.

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.

Thanks,
Luca