New Linux Kernel Patches Better Prepare For sched_ext
([Linux Kernel] 6 Hours Ago
sched_ext)
- Reference: 0001485525
- News link: https://www.phoronix.com/news/Linux-sched_ext-Prep
- Source link:
While Linus Torvalds [1]called for including the "sched_ext" extensible scheduler in Linux 6.11 , he ultimately decided [2]not to merge it for Linux 6.11 after some technical issues were raised on the Linux kernel mailing list.
The good news is that there has been healthy discussion since that point in addressing the problems so that sched_ext will be in shape for merging in a forthcoming kernel cycle. Among the work stemming from that is a new kernel patch series from Peter Zijlstra to better prepare for sched_ext.
Posted on Tuesday were a set of kernel patches to prepare for the sched_ext scheduler code. These patches in turn depend upon [3]the EEVDF scheduler code about to be "complete" . Peter commented on [4]the patch series :
"These patches apply on top of the EEVDF series (queue/sched/core), which re-arranges the fair pick_task() functions to make them state invariant such that they can easily be restarted upon picking (and dequeueing) a delayed task.
This same is required to push (the final) put_prev_task() beyond pick_task(), like we do for sched_core already.
This in turn is done to prepare for sched_ext, which wants a final callback to be in possesion of the next task, such that it can tell if the context switch will leave the sched_class.
...
The patches do a fair bit of cleaning up. Notably a bunch of sched_core stuff -- Joel, could you please test this stuff, because the self-tests we have are hardly adequate."
We'll see if sched_ext manages to be ready by the Linux v6.12 merge window in mid-September or if more time is needed to bake and in turn pushing this extensible scheduler code into a 2025 kernel release.
[1] https://www.phoronix.com/news/Linux-6.11-Extensible-Scheduler
[2] https://www.phoronix.com/news/Linux-6.11-No-sched_ext
[3] https://www.phoronix.com/news/Linux-Completing-EEVDF
[4] https://lore.kernel.org/lkml/20240813222548.049744955@infradead.org/
The good news is that there has been healthy discussion since that point in addressing the problems so that sched_ext will be in shape for merging in a forthcoming kernel cycle. Among the work stemming from that is a new kernel patch series from Peter Zijlstra to better prepare for sched_ext.
Posted on Tuesday were a set of kernel patches to prepare for the sched_ext scheduler code. These patches in turn depend upon [3]the EEVDF scheduler code about to be "complete" . Peter commented on [4]the patch series :
"These patches apply on top of the EEVDF series (queue/sched/core), which re-arranges the fair pick_task() functions to make them state invariant such that they can easily be restarted upon picking (and dequeueing) a delayed task.
This same is required to push (the final) put_prev_task() beyond pick_task(), like we do for sched_core already.
This in turn is done to prepare for sched_ext, which wants a final callback to be in possesion of the next task, such that it can tell if the context switch will leave the sched_class.
...
The patches do a fair bit of cleaning up. Notably a bunch of sched_core stuff -- Joel, could you please test this stuff, because the self-tests we have are hardly adequate."
We'll see if sched_ext manages to be ready by the Linux v6.12 merge window in mid-September or if more time is needed to bake and in turn pushing this extensible scheduler code into a 2025 kernel release.
[1] https://www.phoronix.com/news/Linux-6.11-Extensible-Scheduler
[2] https://www.phoronix.com/news/Linux-6.11-No-sched_ext
[3] https://www.phoronix.com/news/Linux-Completing-EEVDF
[4] https://lore.kernel.org/lkml/20240813222548.049744955@infradead.org/
Kjell