[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251013102347.GY3419281@noisy.programming.kicks-ass.net>
Date: Mon, 13 Oct 2025 12:23:47 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Dietmar Eggemann <dietmar.eggemann@....com>
Cc: tj@...nel.org, linux-kernel@...r.kernel.org, mingo@...nel.org,
juri.lelli@...hat.com, vincent.guittot@...aro.org,
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
Subject: Re: [PATCH 03/12] sched: Fold
sched_class::switch{ing,ed}_{to,from}() into the change pattern
On Thu, Oct 09, 2025 at 06:50:55PM +0200, Dietmar Eggemann wrote:
> Yes, but there seems to be more ... missing DEQUEUE_SAVE (a.k.a.
> ENQUEUE_RESTORE) in
>
> enqueue_dl_entity()
>
> if (flags & (ENQUEUE_RESTORE|ENQUEUE_MIGRATING))
> ^^^^^^^^^^^^^^^
> ...
> add_running_bw(dl_se, dl_rq)
>
> and
>
> __sched_setscheduler()
>
> ...
> if (prev_class != next_class)
> queue_flags |= DEQUEUE_CLASS;
> queue_flags &= ~(DEQUEUE_SAVE | DEQUEUE_MOVE);
> ^^^^^^^^^^^^
>
> as well as
>
> sched_change_begin()
>
> ...
> if (flags & DEQUEUE_CLASS) {
> if (WARN_ON_ONCE(flags & (DEQUEUE_SAVE | DEQUEUE_MOVE)))
> flags &= ~(DEQUEUE_SAVE | DEQUEUE_MOVE);
> ^^^^^^^^^^^^
>
Urgh.. SAVE/RESTORE while changing CLASS is so weird.
But yeah, let me take that bit out for now -- I'll make a note in a
comment that we should look at perhaps cleaning that up instead.
Powered by blists - more mailing lists