Re: [PATCH v16 6/7] sched: Fix proxy/current (push,pull)ability
From: John Stultz
Date: Wed Apr 16 2025 - 17:19:01 EST
On Sun, Apr 13, 2025 at 8:29 PM K Prateek Nayak <kprateek.nayak@xxxxxxx> wrote:
>
> Hello John,
>
> On 4/12/2025 11:32 AM, John Stultz wrote:
> > diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
> > index ad45a8fea245e..eb07c3a1b8fa4 100644
> > --- a/kernel/sched/deadline.c
> > +++ b/kernel/sched/deadline.c
> > @@ -2166,6 +2166,9 @@ static void enqueue_task_dl(struct rq *rq, struct task_struct *p, int flags)
> > if (dl_server(&p->dl))
> > return;
> >
> > + if (task_is_blocked(p))
> > + return;
> > +
> > if (!task_current(rq, p) && !p->dl.dl_throttled && p->nr_cpus_allowed > 1)
> > enqueue_pushable_dl_task(rq, p);
> > }
>
> Do we need an early return in put_prev_task_dl() similar to the one in
> put_prev_task_rt()?
Indeed, that does look like something I've overlooked (and suggests I
need to do more deadline testing). Thank you so much for pointing this
out!
-john