Lines Matching +full:no +full:- +full:idle +full:- +full:on +full:- +full:init
6 programs - the BPF scheduler.
9 algorithm can be implemented on top.
14 * The BPF scheduler can be turned on and off dynamically anytime.
16 * The system integrity is maintained no matter what the BPF scheduler does.
18 a runnable task stalls, or on invoking the SysRq key sequence
19 :kbd:`SysRq-S`.
24 `sched_ext_dump` tracepoint. The SysRq key sequence :kbd:`SysRq-D`
35 .. code-block:: none
54 in ``ops->flags``, all ``SCHED_NORMAL``, ``SCHED_BATCH``, ``SCHED_IDLE``, and
58 set in ``ops->flags``, only tasks with the ``SCHED_EXT`` policy are scheduled
62 Terminating the sched_ext scheduler program, triggering :kbd:`SysRq-S`, or
66 .. code-block:: none
68 # make -j16 -C tools/sched_ext
79 .. code-block:: none
87 this monotonically incrementing counter (a value of zero indicates that no BPF
90 .. code-block:: none
98 .. code-block:: none
110 If ``CONFIG_SCHED_DEBUG`` is set, whether a given task is on sched_ext can
113 .. code-block:: none
127 .. code-block:: c
132 * idle core is found by the default ops.select_cpu() implementation,
183 exit_type = ei->type;
190 .init = (void *)simple_init,
196 ---------------
206 DSQ. A non-local DSQ is "consumed" to transfer a task to the consuming CPU's
215 ----------------
221 hint. Second, waking up the selected CPU if idle.
226 ``ops.select_cpu()`` returns matches the CPU the task eventually runs on.
228 A side-effect of selecting a CPU is waking it up from idle. While a BPF
253 * Queue the task on the BPF side.
261 be used - ``SCX_DSQ_LOCAL``, ``SCX_DSQ_LOCAL_ON | cpu``,
263 currently can't be called with BPF locks held, this is being worked on
268 * ``scx_bpf_consume()`` tranfers a task from the specified non-local DSQ
283 * Go idle.
287 built-in DSQs are used, there is no need to implement ``ops.dispatch()`` as
288 a task is never queued on the BPF scheduler and both the local and global
291 ``scx_bpf_dispatch()`` queues the task on the FIFO of the target DSQ. Use
293 ``SCX_DSQ_LOCAL`` and ``SCX_DSQ_GLOBAL`` do not support priority-queue
313 * ``scx_qmap[.bpf].c``: A multi-level FIFO scheduler supporting five
319 The APIs provided by sched_ext to BPF schedulers programs have no stability