Messages in this thread | | | Date | Fri, 18 Nov 2016 16:47:48 +0100 | From | Peter Zijlstra <> | Subject | Re: [RFC v3 2/6] Improve the tracking of active utilisation |
| |
On Mon, Oct 24, 2016 at 04:06:34PM +0200, Luca Abeni wrote: > @@ -1074,6 +1161,14 @@ select_task_rq_dl(struct task_struct *p, int cpu, int sd_flag, int flags) > } > rcu_read_unlock(); > > + rq = task_rq(p); > + raw_spin_lock(&rq->lock); > + if (hrtimer_active(&p->dl.inactive_timer)) { > + sub_running_bw(&p->dl, &rq->dl); > + hrtimer_try_to_cancel(&p->dl.inactive_timer); > + } > + raw_spin_unlock(&rq->lock);
Its a bit sad having to take rq->lock here...
Also, what happens when hrtimer_try_to_cancel() fails?
> + > out: > return cpu; > }
| |