Messages in this thread | | | Date | Tue, 5 Apr 2016 18:50:59 +0200 | From | luca abeni <> | Subject | Re: [RFC v2 2/7] Correctly track the active utilisation for migrating tasks |
| |
On Tue, 5 Apr 2016 14:24:25 +0200 Peter Zijlstra <peterz@infradead.org> wrote: [...] > > @@ -1618,7 +1620,9 @@ static void pull_dl_task(struct rq *this_rq) > > resched = true; > > > > deactivate_task(src_rq, p, 0); > > + sub_running_bw(&p->dl, &src_rq->dl); > > set_task_cpu(p, this_cpu); > > + add_running_bw(&p->dl, &this_rq->dl); > > activate_task(this_rq, p, 0); > > dmin = p->dl.deadline; > > > > Are these the only places a DL task might be migrated from? In > particular I worry about the case where we assign an existing DL task to > a different cpuset. I was under the impression that these (+ the select_task_rq_dl() thing) covered all of the migration cases... But I was probably wrong: now that you say this, I realise that I never tested moving dl tasks between different cpusets.
I'll test that, and fix the patch if some new issue appears.
Thanks, Luca
| |