On Fri, 2021-06-25 at 10:08 +0200, Peter Zijlstra wrote: > On Wed, Jun 16, 2021 at 11:42:05AM -0400, Tejun Heo wrote: > > A high-level problem that I see with the proposal is that this > > would bake > > the current recursive implementation into the interface. The > > semantics of > > the currently exposed interface, at least the weight based part, is > > abstract > > and doesn't necessarily dictate how the scheduling is actually > > performed. > > Adding this would mean that we're now codifying the current > > behavior of > > fully nested scheduling into the interface. > > It's a direct concequence of the hierarchical requirement. The > approach > is the only valid one. The other relative controllers that don't do > this, are simply broken. > > Absolute controllers have it easier, they can be trivially flattened. I'm pretty sure CFS can be mostly flattened too, just not trivially :) Doing the delta_exectime to vruntime accounting in a somewhat delayed fashion, with never more than one or two timeslices worth of vruntime at a time being accounted, should make the flat CFS runqueue model work. -- All Rights Reversed.