diff options
| author | Andrea Righi <arighi@nvidia.com> | 2026-06-08 18:55:57 +0200 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-06-24 11:39:50 -1000 |
| commit | 5771e79e461e72140b752496b69275b9e6bd1a75 (patch) | |
| tree | 0851cf9262fc9c1ddca105e68b33d8aa48bc345f /Documentation/gpu/intel-display/git@git.tavy.me:linux.git | |
| parent | 4cd5de72b6f8951cef6b45c177a582824bc13d46 (diff) | |
sched_ext: Reset dsq_vtime and slice when a task leaves SCX
When a task leaves the BPF scheduler's control, p->scx.dsq_vtime and
p->scx.slice keep whatever values they last held. The slice value is
core-managed and is refilled on the next enqueue, but dsq_vtime is owned
by the BPF scheduler and is never cleared by the core, so a task that
leaves SCX and later returns carries a stale dsq_vtime across the
round-trip.
The stale values are also visible to other SCX schedulers that inspect
the scx fields of non-SCX tasks.
Fix this by resetting both dsq_vtime and slice in scx_disable_task(),
after ops.disable(), so the BPF scheduler can still observe the task's
final values and non-SCX tasks do not retain stale SCX state.
Signed-off-by: Andrea Righi <arighi@nvidia.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'Documentation/gpu/intel-display/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions
