Re: [PATCH v10 8/9] sched/fair: Add latency list

From: Vincent Guittot
Date: Tue Feb 21 2023 - 10:43:42 EST


On Tue, 21 Feb 2023 at 16:12, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> On Fri, Jan 13, 2023 at 03:12:33PM +0100, Vincent Guittot wrote:
> > @@ -12552,8 +12634,15 @@ int sched_group_set_latency(struct task_group *tg, s64 latency)
> >
> > for_each_possible_cpu(i) {
> > struct sched_entity *se = tg->se[i];
> > + struct rq *rq = cpu_rq(i);
> > + struct rq_flags rf;
> > +
> > + rq_lock_irqsave(rq, &rf);
> >
> > + __dequeue_latency(se->cfs_rq, se);
> > WRITE_ONCE(se->latency_offset, latency);
> > +
> > + rq_unlock_irqrestore(rq, &rf);
> > }
>
> This seems asymmetric; maybe something like:
>
> queued = __dequeue_latency(..);
> WRITE_ONCE(...);
> if (queued)
> __enqueue_latency(...);
>
> ?

Fair enough