diff options
| author | Tejun Heo <tj@kernel.org> | 2026-10-16 19:37:16 -1000 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-10-17 04:35:31 -1000 |
| commit | 30fb2b1e4d41a641a059f295a717ffa0e24307e7 (patch) | |
| tree | e0e73db5e5da9ccc45b6a8e4d9f55abd01d05c74 /tools/perf/scripts/python/bin/export-to-postgresql-report | |
| parent | 43e1ef14a47257ebf7e3bb3ab9a6df9c6f817c5f (diff) | |
sched_ext: Fix the running task keeping its protection into bypass
Protection ends when the scheduler enters bypass, so that bypass scheduling
can cut every task's slice. scx_bypass() clears it for the queued tasks by
cycling them, and strips the running task's in the same walk over
rq->scx.runnable_list. The running task is never on that list.
set_next_task_scx() takes it off and put_prev_task_scx() puts it back, so
the strip never runs. A protected running task then keeps its slice into
bypass, where the tick's attempts to cut it are refused.
Strip the running task's protection outside the walk.
Fixes: 9cfc6ab34a31 ("sched_ext: Add SCX_TASK_PROTECTED")
Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Andrea Righi <arighi@nvidia.com>
Diffstat (limited to 'tools/perf/scripts/python/bin/export-to-postgresql-report')
0 files changed, 0 insertions, 0 deletions
