Re: [PATCH 0/2] sched_ext: Add a core event and update scx schedulers

From: Andrea Righi
Date: Fri Feb 07 2025 - 01:24:25 EST


Hi,

On Fri, Feb 07, 2025 at 12:13:36PM +0900, Changwoo Min wrote:
> This patchset introduces a new event, SCX_EV_ENQ_SLICE_DFL, and updates
> two scx schedulers -- scx_qmap and scx_central -- to print out the new
> event.
>
> SCX_EV_ENQ_SLICE_DFL counts how many times the tasks' time slice is set
> to the default value (SCX_SLICE_DFL) by the sched_ext core in the enqueue
> and pick_next paths.
>
> Scheduling a task with SCX_SLICE_DFL unintentionally would be a source
> of latency spikes because SCX_SLICE_DFL is relatively long (20 msec).
> Thus, soaring the SCX_EV_ENQ_SLICE_DFL value would be a sign of BPF
> scheduler bugs, causing latency spikes.

Not directly related to this patch set, but as a general thought: would it
be useful to introduce ops->slice_ms (in sched_ext_ops) to override
SCX_SLICE_DFL?

With that, schedulers that care about latency could set a smaller default
time slice to prevent potential spikes caused by the implicit use of
SCX_SLICE_DFL.

Opinions?

-Andrea

>
> Changwoo Min (2):
> sched_ext: Add an event, SCX_EV_ENQ_SLICE_DFL
> sched_ext: Print an event, SCX_EV_ENQ_SLICE_DFL, in scx_qmap/central
>
> kernel/sched/ext.c | 15 ++++++++++++++-
> tools/sched_ext/scx_central.bpf.c | 2 ++
> tools/sched_ext/scx_qmap.bpf.c | 2 ++
> 3 files changed, 18 insertions(+), 1 deletion(-)
>
> --
> 2.48.1
>