Re: [PATCH] Fix migration of SCHED_DEADLINE tasks

From: Luca Abeni
Date: Fri Oct 16 2015 - 04:04:06 EST


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
--
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/