-
- Downloads
sched: Rework pick_next_task()
The current rule is that: pick_next_task() := pick_task() + set_next_task(.first = true) And many classes implement it directly as such. Change things around to make pick_next_task() optional while also changing the definition to: pick_next_task(prev) := pick_task() + put_prev_task() + set_next_task(.first = true) The reason is that sched_ext would like to have a 'final' call that knows the next task. By placing put_prev_task() right next to set_next_task() (as it already is for sched_core) this becomes trivial. As a bonus, this is a nice cleanup on its own. Signed-off-by:Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/20240813224016.051225657@infradead.org
Showing
- kernel/sched/core.c 15 additions, 6 deletionskernel/sched/core.c
- kernel/sched/deadline.c 1 addition, 20 deletionskernel/sched/deadline.c
- kernel/sched/fair.c 5 additions, 6 deletionskernel/sched/fair.c
- kernel/sched/idle.c 2 additions, 14 deletionskernel/sched/idle.c
- kernel/sched/rt.c 1 addition, 12 deletionskernel/sched/rt.c
- kernel/sched/sched.h 12 additions, 4 deletionskernel/sched/sched.h
- kernel/sched/stop_task.c 1 addition, 12 deletionskernel/sched/stop_task.c
Loading
Please register or sign in to comment