[PATCH v3] docs/sched_ext: document that cgroup CPU knobs are scheduler-dependent
Tao Cui <[email protected]>
| Newsgroups | dev.linux.lists.sched-ext,org.kernel.vger.bpf,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
From: Tao Cui <[email protected]> The fair class enforces cpu controller knobs such as cpu.max, cpu.weight and cpu.idle in the kernel. sched_ext only passes them to the BPF scheduler through the 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. The same applies to other knobs like nice levels. Document this in the basics section so users and container orchestrators know what to expect from a BPF scheduler. Signed-off-by: Tao Cui <[email protected]> --- v2 -> v3: Drop the scheduler list and the nr_throttled example, keep the section concise and generic, per review. v2: https://lore.kernel.org/r/[email protected] Documentation/scheduler/sched-ext.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Documentation/scheduler/sched-ext.rst b/Documentation/scheduler/sched-ext.rst index 35b550671ca7..b594d93dd6aa 100644 --- a/Documentation/scheduler/sched-ext.rst +++ b/Documentation/scheduler/sched-ext.rst @@ -242,6 +242,18 @@ optional. The following modified excerpt is from .name = "simple", }; +Scheduler-Dependent Knobs +------------------------- + +The fair class enforces cpu controller knobs such as ``cpu.max``, +``cpu.weight`` and ``cpu.idle`` in the kernel. sched_ext only passes +them to the BPF scheduler through ``ops.cgroup_set_weight()``, +``ops.cgroup_set_idle()``, ``ops.cgroup_set_bandwidth()`` and friends. +Whether and how a knob takes effect is up to the loaded scheduler: it +may implement the corresponding callback partially or not at all. The +same applies to other knobs like nice levels. When relying on these +knobs, check the documentation or source of the loaded scheduler. + Dispatch Queues --------------- -- 2.43.0