From: luca abeni <luca.abeni@santannapisa.it>
To: Tejun Heo <tj@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>,
Yuri Andriaccio <yurand2000@gmail.com>,
Ingo Molnar <mingo@redhat.com>,
Juri Lelli <juri.lelli@redhat.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Steven Rostedt <rostedt@goodmis.org>,
Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
Valentin Schneider <vschneid@redhat.com>,
linux-kernel@vger.kernel.org,
Yuri Andriaccio <yuri.andriaccio@santannapisa.it>,
hannes@cmpxchg.org, mkoutny@suse.com, cgroups@vger.kernel.org
Subject: Re: [RFC PATCH v5 20/29] sched/deadline: Allow deeper hierarchies of RT cgroups
Date: Thu, 7 May 2026 16:30:58 +0200 [thread overview]
Message-ID: <20260507163058.2c435922@nowhere> (raw)
In-Reply-To: <afpLir8tD0Ycb3D8@slm.duckdns.org>
Hi Tejun,
first of all, thanks for your comments! I think this is the kind of
dicussion that we need to have...
Right now we have something that works "well enough" for real-time, but
we want to make it useful in general, so that distributions will not
disable it by default.
I need to better study your suggestions (I do not know cgroup v2
much...), but I have some questions to better understand possible
solutions:
On Tue, 5 May 2026 09:56:58 -1000
Tejun Heo <tj@kernel.org> wrote:
[...]
> - cgroup2 enforces that internal cgroups w/ controllers enabled
> cannot have threads in them. No need to enforce that separately.
>
> - However, the cpu controller is a threaded controller which means
> that it can have threaded sub-hierarchy where the no-internal-process
> rule doesn't apply. This was created explicitly for cpu controller.
> The proposed change blocks it effectively forcing cpu controller into
> regular domain controller behavior subject to no-internal-process
> rule. Note these are enforced at controller granularity and this
> means that users who use the threaded mode will be forced to pick
> between the two.
Just to better understand: would it make sense to allow non-{FIFO,RT}
tasks to be in non-leaf cgroups (as allowed by the threaded CPU
controller), while enforcing that FIFO/RR tasks can only be in leaf
cgroups? Or would this be a hack that compromises the rt-CPU controller
usefulness?
> - This has the same problem with cgroup1's rt cgroup sched support
> where there is no way to have a permissive default configuration,
> which means that users who don't really care about distributing rt
> shares hierarchically would get blocked from running rt processes by
> default, which basically forces distros to disable rt cgroup sched
> support. This is not new but it'd be a shame to put in all the work
> and the end result is that most people don't even have access to the
> feature.
Yes, we have a bad default here.
Would a default like "allow running FIFO/RR tasks without runtime
enforcement" (this is what happens to FIFO/RR tasks running in the root
control group) be acceptable?
Thanks,
Luca
>
> Here's my suggestion if there is desire for this to become something
> most people have easy access to:
>
> - Don't make it impossible to use in conjunction with other resource
> control mechanisms especially not CPU controller itself. Don't force
> people to choose between threaded mode and rt control. Allow them to
> co-exist in a reasonable manner.
>
> - The same in the wider scope. Don't let it get in the way of people
> who don't care about it. Compromising on interface / failure mode is
> better than people not being able to use it in most cases.
>
> Thanks.
>
next prev parent reply other threads:[~2026-05-07 14:31 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260430213835.62217-1-yurand2000@gmail.com>
[not found] ` <20260430213835.62217-14-yurand2000@gmail.com>
2026-05-05 13:04 ` [RFC PATCH v5 13/29] sched/rt: Implement dl-server operations for rt-cgroups Peter Zijlstra
[not found] ` <20260430213835.62217-15-yurand2000@gmail.com>
2026-05-05 13:16 ` [RFC PATCH v5 14/29] sched/rt: Update task event callbacks for HCBS scheduling Peter Zijlstra
[not found] ` <20260430213835.62217-16-yurand2000@gmail.com>
2026-05-05 14:36 ` [RFC PATCH v5 15/29] sched/rt: Update rt-cgroup schedulability checks Peter Zijlstra
[not found] ` <20260430213835.62217-19-yurand2000@gmail.com>
2026-05-05 14:59 ` [RFC PATCH v5 18/29] sched/core: Cgroup v2 support Peter Zijlstra
2026-05-06 19:58 ` luca abeni
2026-05-07 7:01 ` Peter Zijlstra
2026-05-07 13:30 ` luca abeni
2026-05-07 14:16 ` Peter Zijlstra
[not found] ` <20260430213835.62217-20-yurand2000@gmail.com>
2026-05-05 15:01 ` [RFC PATCH v5 19/29] sched/rt: Remove support for cgroups-v1 Peter Zijlstra
2026-05-07 15:35 ` Juri Lelli
2026-05-13 12:15 ` Yuri Andriaccio
2026-05-13 14:37 ` Juri Lelli
[not found] ` <20260430213835.62217-21-yurand2000@gmail.com>
2026-05-05 15:15 ` [RFC PATCH v5 20/29] sched/deadline: Allow deeper hierarchies of RT cgroups Peter Zijlstra
2026-05-05 19:56 ` Tejun Heo
2026-05-07 10:53 ` Peter Zijlstra
2026-05-07 15:03 ` Juri Lelli
2026-05-07 15:05 ` Peter Zijlstra
2026-05-07 16:39 ` luca abeni
2026-05-11 9:29 ` Juri Lelli
2026-05-11 17:52 ` Tejun Heo
2026-05-07 16:44 ` luca abeni
2026-05-11 9:40 ` luca abeni
2026-05-11 18:15 ` Tejun Heo
2026-05-11 17:37 ` Tejun Heo
2026-05-07 14:30 ` luca abeni [this message]
2026-05-11 18:28 ` Tejun Heo
2026-05-12 17:38 ` Yuri Andriaccio
2026-05-12 18:19 ` Tejun Heo
2026-05-12 18:20 ` Tejun Heo
2026-05-13 12:08 ` Yuri Andriaccio
2026-05-13 19:10 ` Tejun Heo
2026-05-14 7:25 ` luca abeni
2026-05-14 22:20 ` Tejun Heo
[not found] ` <20260430213835.62217-23-yurand2000@gmail.com>
2026-05-05 15:20 ` [RFC PATCH v5 22/29] sched/rt: Add rt-cgroup migration functions Peter Zijlstra
2026-05-05 15:24 ` Peter Zijlstra
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=20260507163058.2c435922@nowhere \
--to=luca.abeni@santannapisa.it \
--cc=bsegall@google.com \
--cc=cgroups@vger.kernel.org \
--cc=dietmar.eggemann@arm.com \
--cc=hannes@cmpxchg.org \
--cc=juri.lelli@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=mkoutny@suse.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=tj@kernel.org \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
--cc=yurand2000@gmail.com \
--cc=yuri.andriaccio@santannapisa.it \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.