From: Peter Zijlstra <peterz@infradead.org>
To: Kayra Cizmeci <kayracizmeci@gmail.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
mingo@redhat.com, juri.lelli@redhat.com,
dietmar.eggemann@arm.com, rostedt@goodmis.org,
bsegall@google.com, mgorman@suse.de, vschneid@redhat.com,
kprateek.nayak@amd.com, linux-kernel@vger.kernel.org,
jakub@okonski.org, longman@redhat.com, tj@kernel.org,
hannes@cmpxchg.org, mkoutny@suse.com, cgroups@vger.kernel.org,
jstultz@google.com, qyousef@layalina.io, joshdon@google.com
Subject: Re: [PATCH v2] sched/eevdf: Fix sched idle task group preemption
Date: Wed, 21 Oct 2026 16:50:42 +0200 [thread overview]
Message-ID: <20261021145042.GQ2823843@noisy.programming.kicks-ass.net> (raw)
In-Reply-To: <ati_o5c-SoiOp529@scheduler.schedules>
On Wed, Oct 21, 2026 at 04:41:52PM +0300, Kayra Cizmeci wrote:
> On Wed, Oct 21, 2026 at 03:32:59PM +0200, Vincent Guittot wrote:
> > On Wed, 21 Oct 2026 at 15:13, Peter Zijlstra <peterz@infradead.org> wrote:
> > > What is the actual semantics of cpu.idle nonsense? Why do we care about
> > > this common ancestor?
> >
> > AFAICT, cpu.idle applied to one level and against entities at the same level
> >
>
> Yeah. Like on here:
>
> ROOT
> /\
> / \
> / \
> GA* GB
> | /\
> V / \
> TA GC* GD
> | |
> V V
> TB TC
(marked GA and GC with * to denote their 'idleness')
> If GA is idle and GB is not, while GC is idle and were looking to TA and
> TB we gotta choose TB. But if we just look to GC and GA we would choose
> neither. .idle just applies to one level as Vincent says.
Yeah, that's what we used to do, but the more I think about this, the
less sense it makes!
Josh added this (added to Cc now), but we have a number of Google folks
on Cc already. It would be good to hear how this is actually used.
So in your example TA and TB are both inside an idle group, and
therefore one can argue their behaviour should be like !idle. But their
common ancestor is root, and so the fact that they're contained in idle
groups gets lost (which seems crazeh).
But worse I think is T{AB} vs TC. In that case none of the common
ancestors (root,GB) resp. is idle. But T{AB} being inside idle should,
IMO. definitely matter vs TC, which has no idle anywhere.
So I think I would very much like to change the semantics here. The
current stuff makes no sense.
Anybody, please chime in with how this idle crap is used and expected to
work.
prev parent reply other threads:[~2026-10-21 14:50 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-19 18:26 Vincent Guittot
2026-10-21 7:19 ` Kayra Cizmeci
2026-10-21 13:13 ` Peter Zijlstra
2026-10-21 13:32 ` Vincent Guittot
2026-10-21 13:41 ` Kayra Cizmeci
2026-10-21 14:50 ` Peter Zijlstra [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261021145042.GQ2823843@noisy.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=bsegall@google.com \
--cc=cgroups@vger.kernel.org \
--cc=dietmar.eggemann@arm.com \
--cc=hannes@cmpxchg.org \
--cc=jakub@okonski.org \
--cc=joshdon@google.com \
--cc=jstultz@google.com \
--cc=juri.lelli@redhat.com \
--cc=kayracizmeci@gmail.com \
--cc=kprateek.nayak@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=mkoutny@suse.com \
--cc=qyousef@layalina.io \
--cc=rostedt@goodmis.org \
--cc=tj@kernel.org \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®