Messages in this thread | | | Subject | Re: [PATCH] Fix migration of SCHED_DEADLINE tasks | From | Luca Abeni <> | Date | Fri, 16 Oct 2015 10:03:48 +0200 |
| |
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
| |