On Tue, Nov 29, 2022 at 10:23:10PM -1000, Tejun Heo wrote: > Signed-off-by: Tejun Heo > Reviewed-by: David Vernet > Acked-by: Josh Don > Acked-by: Hao Luo > Acked-by: Barret Rhoden No patch description? Really? Please write one. For patch subject, better write "Documentation: scheduler: document extensible scheduler class". > +* The system integrity is maintained no matter what the BPF scheduler does. > + The default scheduling behavior is restored anytime an error is detected, > + a runnable task stalls, or on sysrq-S. > + > ... > +Terminating the sched_ext scheduler program, triggering sysrq-S, or > +detection of any internal error including stalled runnable tasks aborts the > +BPF scheduler and reverts all tasks back to CFS. IMO the reference to SysRq key can be reworded: ---- >8 ---- diff --git a/Documentation/scheduler/sched-ext.rst b/Documentation/scheduler/sched-ext.rst index a2ad963b227a1b..404b820119b4a4 100644 --- a/Documentation/scheduler/sched-ext.rst +++ b/Documentation/scheduler/sched-ext.rst @@ -15,7 +15,8 @@ programs - the BPF scheduler. * The system integrity is maintained no matter what the BPF scheduler does. The default scheduling behavior is restored anytime an error is detected, - a runnable task stalls, or on sysrq-S. + a runnable task stalls, or on invoking SysRq key sequence like + :kbd:`SysRq-s`. Switching to and from sched_ext =============================== @@ -35,7 +36,7 @@ case, all ``SCHED_NORMAL``, ``SCHED_BATCH``, ``SCHED_IDLE`` and ``SCHED_EXT`` tasks are scheduled by sched_ext. In the example schedulers, this mode can be selected with the ``-a`` option. -Terminating the sched_ext scheduler program, triggering sysrq-S, or +Terminating the sched_ext scheduler program, triggering SysRq key, or detection of any internal error including stalled runnable tasks aborts the BPF scheduler and reverts all tasks back to CFS. > +A task is always *dispatch*ed to a dsq for execution. The task starts > +execution when a CPU *consume*s the task from the dsq. Sphinx reported two warnings: Documentation/scheduler/sched-ext.rst:117: WARNING: Inline emphasis start-string without end-string. Documentation/scheduler/sched-ext.rst:117: WARNING: Inline emphasis start-string without end-string. I have to replace with quotes (since "dispatch" and "consume" have different meaning in this context): ---- >8 ---- diff --git a/Documentation/scheduler/sched-ext.rst b/Documentation/scheduler/sched-ext.rst index 81f78e05a6c214..a2ad963b227a1b 100644 --- a/Documentation/scheduler/sched-ext.rst +++ b/Documentation/scheduler/sched-ext.rst @@ -114,8 +114,8 @@ there is one global FIFO (``SCX_DSQ_GLOBAL``), and one local dsq per CPU (``SCX_DSQ_LOCAL``). The BPF scheduler can manage an arbitrary number of dsq's using ``scx_bpf_create_dsq()`` and ``scx_bpf_destroy_dsq()``. -A task is always *dispatch*ed to a dsq for execution. The task starts -execution when a CPU *consume*s the task from the dsq. +A task is always "dispatched" to a dsq for execution. The task starts +execution when a CPU "consumes" the task from the dsq. Internally, a CPU only executes tasks which are running on its local dsq, and the ``.consume()`` operation is in fact a transfer of a task from a Otherwise the doc LGTM. Thanks. -- An old man doll... just what I always wanted! - Clara