KFunc scx_bpf_select_cpu_dfl
This function is the default implementation of sched_ext_ops.select_cpu
Definition
Can only be called from select_cpu
if the built-in CPU selection is enabled, sched_ext_ops.update_idle
is missing, or SCX_OPS_KEEP_BUILTIN_IDLE
is set. p
, prev_cpu
and wake_flags
match sched_ext_ops.select_cpu
.
Parameters
p:
task_struct to select a CPU for
prev_cpu
: CPU p
was on previously
wake_flags
: SCX_WAKE_*
, possible values are:
SCX_WAKE_FORK
(0x02
) - Wakeup after execSCX_WAKE_TTWU
(0x04
) - Wakeup after forkSCX_WAKE_SYNC
(0x08
) - Wakeup
is_idle
: out parameter indicating whether the returned CPU is idle
Returns
The picked CPU with is_idle
indicating whether the picked CPU is currently idle and thus a good candidate for direct dispatching.
Signature
s32 scx_bpf_select_cpu_dfl(struct task_struct *p, s32 prev_cpu, u64 wake_flags, bool *is_idle)
Usage
Docs could be improved
This part of the docs is incomplete, contributions are very welcome
Program types
The following program types can make use of this kfunc:
Example
Docs could be improved
This part of the docs is incomplete, contributions are very welcome