Re: [PATCH v4] docs/sched_ext: document that cgroup CPU knobs are scheduler-dependent
Andrea Righi <[email protected]>
| Newsgroups | dev.linux.lists.sched-ext,org.kernel.vger.bpf,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <aoxL3gADCc0X47Go@gpd4> |
On Mon, Aug 24, 2026 at 09:21:16PM +0800, Tao Cui wrote: > From: Tao Cui <[email protected]> > > The scheduler core communicates the initial cpu controller settings > to the BPF scheduler through ops.cgroup_init() and reports subsequent > changes through the corresponding ops.cgroup_set_*() callbacks. > Whether and how a knob takes effect is up to the loaded scheduler: > it may implement the corresponding callback partially or not at all, > so cpu.max, cpu.weight and friends can silently have no effect. > > Document this in the basics section of sched-ext.rst. > > Signed-off-by: Tao Cui <[email protected]> Looks good to me now. Reviewed-by: Andrea Righi <[email protected]> Thanks, -Andrea > --- > v3 -> v4: Rephrase per Andrea's suggestion: mention ops.cgroup_init() > for the initial values, ops.cgroup_set_*() only for subsequent > changes, and disambiguate per-task nice (ops.set_weight()) from > cpu.weight.nice. > > v3: https://lore.kernel.org/r/[email protected] > > Documentation/scheduler/sched-ext.rst | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/Documentation/scheduler/sched-ext.rst b/Documentation/scheduler/sched-ext.rst > index 35b550671ca7..794ae80b3ba3 100644 > --- a/Documentation/scheduler/sched-ext.rst > +++ b/Documentation/scheduler/sched-ext.rst > @@ -242,6 +242,21 @@ optional. The following modified excerpt is from > .name = "simple", > }; > > +Scheduler-Dependent Knobs > +------------------------- > + > +The fair-class scheduler enforces CPU controller settings such as > +``cpu.max``, ``cpu.weight`` and ``cpu.idle``. For sched_ext tasks, the > +scheduler core communicates these settings to the BPF scheduler > +through ``ops.cgroup_init()`` and reports subsequent changes through > +the corresponding ``ops.cgroup_set_*()`` callbacks. Similarly, per-task > +nice changes are converted to weights and reported through > +``ops.set_weight()``. > + > +Each BPF scheduler is responsible for implementing the scheduling > +semantics of these settings and may choose to ignore them. Consult the > +loaded scheduler's documentation before relying on these controls. > + > Dispatch Queues > --------------- > > -- > 2.43.0 >