diff options
| author | Kuba Piecuch <jpiecuch@google.com> | 2026-04-09 16:57:44 +0000 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-04-09 22:30:52 -1000 |
| commit | 71ba9a5cb125998a875e3f008cbb28b028b609aa (patch) | |
| tree | 98cf7c341a1c59b12f0c2a2e815de15b759003d9 /include/net/phy/git@git.tavy.me:linux.git | |
| parent | ff1befcb168395481fd6a28d8036b707cb7e7a13 (diff) | |
sched_ext: Documentation: improve accuracy of task lifecycle pseudo-code
* Add ops.quiescent() and ops.runnable() to the sched_change path.
When a queued task has one of its scheduling properties changed
(e.g. nice, affinity), it goes through dequeue() -> quiescent() ->
(property change callback, e.g. ops.set_weight()) -> runnable() ->
enqueue().
* Change && to || in ops.enqueue() condition. We want to enqueue tasks
that have a non-zero slice and are not in any DSQ.
* Call ops.dispatch() and ops.dequeue() only for tasks that have had
ops.enqueue() called. This is to account for tasks direct-dispatched
from ops.select_cpu().
* Add a note explaining that the pseudo-code provides a simplified view
of the task lifecycle and list some examples of cases that the
pseudo-code does not account for.
Fixes: a4f61f0a1afd ("sched_ext: Documentation: Add ops.dequeue() to task lifecycle")
Signed-off-by: Kuba Piecuch <jpiecuch@google.com>
Reviewed-by: Andrea Righi <arighi@nvidia.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/net/phy/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions
