Messages in this thread | | | Date | Tue, 21 Feb 2023 16:11:51 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH v10 8/9] sched/fair: Add latency list |
| |
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(...);
?
| |