scx_rustland: avoid using SCX_ENQ_PREEMPT

With the introduction of a the dynamic time slice that scales down based
on the number of tasks in the system, there is no obvious benefit in
utilizing SCX_ENQ_PREEMPT to dispatch the user-space scheduler.

The reduced time slice as the task count increases already enhances the
user-space scheduler's opportunities to run and efficiently manage
scheduling tasks, even when the system is massively overloaded.

Signed-off-by: Andrea Righi <andrea.righi@canonical.com>
This commit is contained in:
Andrea Righi 2024-01-08 08:39:34 +01:00
parent be1b184b51
commit 732ba4900b

View File

@ -461,7 +461,7 @@ static void dispatch_user_scheduler(s32 cpu)
scx_bpf_error("Failed to find usersched task %d", usersched_pid); scx_bpf_error("Failed to find usersched task %d", usersched_pid);
return; return;
} }
dispatch_task(p, cpu, SCX_ENQ_PREEMPT); dispatch_task(p, cpu, 0);
__sync_fetch_and_add(&nr_kernel_dispatches, 1); __sync_fetch_and_add(&nr_kernel_dispatches, 1);
bpf_task_release(p); bpf_task_release(p);
} }