[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260115082431.GE830755@noisy.programming.kicks-ass.net>
Date: Thu, 15 Jan 2026 09:24:31 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Juri Lelli <juri.lelli@...hat.com>
Cc: K Prateek Nayak <kprateek.nayak@....com>,
Pierre Gondois <pierre.gondois@....com>, tj@...nel.org,
linux-kernel@...r.kernel.org, mingo@...nel.org,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
vschneid@...hat.com, longman@...hat.com, hannes@...xchg.org,
mkoutny@...e.com, void@...ifault.com, arighi@...dia.com,
changwoo@...lia.com, cgroups@...r.kernel.org,
sched-ext@...ts.linux.dev, liuwenfang@...or.com, tglx@...utronix.de,
Christian Loehle <christian.loehle@....com>,
luca.abeni@...tannapisa.it
Subject: Re: [PATCH 05/12] sched: Move sched_class::prio_changed() into the
change pattern
On Wed, Jan 14, 2026 at 03:20:48PM +0100, Juri Lelli wrote:
> > --- a/kernel/sched/syscalls.c
> > +++ b/kernel/sched/syscalls.c
> > @@ -639,7 +639,7 @@ int __sched_setscheduler(struct task_str
> > * itself.
> > */
> > newprio = rt_effective_prio(p, newprio);
> > - if (newprio == oldprio)
> > + if (newprio == oldprio && !dl_prio(newprio))
> > queue_flags &= ~DEQUEUE_MOVE;
> > }
>
> We have been using (improperly?) ENQUEUE_SAVE also to know when a new
> entity gets setscheduled to DEADLINE (or its parameters are changed) and
> it looks like this keeps that happening with DEQUEUE_MOVE. So, from a
> quick first look, it does sound good to me.
If this is strictly about tasks coming into SCHED_DEADLINE there are a
number of alternative options:
- there are the sched_class::switch{ing,ed}_to() callbacks;
- there is (the fairly recent) ENQUEUE_CLASS.
Anyway, let me break up this one patch into individual bits and write
changelogs. I'll stick them in queue/sched/urgent for now; hopefully
Pierre can given them a spin and report back if it all sorts his
problem).
Powered by blists - more mailing lists