core/exec-invoke: use sched_setattr instead of sched_setscheduler
authorFlorian Schmaus <flo@geekplace.eu>
Wed, 26 Jun 2024 12:37:52 +0000 (14:37 +0200)
committerLuca Boccassi <luca.boccassi@gmail.com>
Wed, 26 Jun 2024 18:54:53 +0000 (20:54 +0200)
commit016e9d8d08ce66f5e81b42e0a0db398afc17336a
tree5aa94451978ef401b9dbbb794d6ebc8541206f08
parent0828c6a2bf9aa40a6cf5fcb3d5650130c483ac8a
core/exec-invoke: use sched_setattr instead of sched_setscheduler

The kernel's sched_setattr interface allows for more control over a processes
scheduling attributes as the previously used sched_setscheduler interface.

Using sched_setattr is also the prerequisite for support of utilization
clamping (UCLAMP [1], see #26705) and allows to set sched_runtime. The latter,
sched_runtime, will probably become a relevant scheduling parameter of the
EEVDF scheduler [2, 3], and therefore will not only apply to processes
scheduled via SCHED_DEADLINE, but also for processes scheduled via
SCHED_OTHER/SCHED_BATCH (i.e., most processes).

1: https://docs.kernel.org/next/scheduler/sched-util-clamp.html
2: https://lwn.net/Articles/969062/
3: https://lwn.net/ml/linux-kernel/20240405110010.934104715@infradead.org/
meson.build
src/basic/missing_sched.h
src/basic/missing_syscall.h
src/core/exec-invoke.c