Re: [PATCH 3/6 v3] sched/eevdf: Update slice protection even when resched is already set

From: Peter Zijlstra

Date: Fri Jun 26 2026 - 03:21:59 EST


On Wed, Jun 24, 2026 at 05:12:26PM +0200, Vincent Guittot wrote:
> Even if resched is already set, we might want to update or even cancel
> the slice protection and ensure that the newly waking task will be the
> next one to run.
>
> Signed-off-by: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
> Tested-by: K Prateek Nayak <kprateek.nayak@xxxxxxx>
> ---
> kernel/sched/fair.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index 8639086e5d9e..854f3a9f1d80 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -9804,7 +9804,7 @@ static void wakeup_preempt_fair(struct rq *rq, struct task_struct *p, int wake_f
> * prevents us from potentially nominating it as a false LAST_BUDDY
> * below.
> */
> - if (test_tsk_need_resched(rq->curr))
> + if (!sched_feat(PREEMPT_SHORT) && test_tsk_need_resched(rq->curr))
> return;
>
> if (!sched_feat(WAKEUP_PREEMPTION))

This one is leading to boot splats for me -- let me try and figure out
why.