From: Mike Galbraith <umgwanakikbuti@gmail.com>
To: Tejun Heo <tj@kernel.org>, Andy Lutomirski <luto@amacapital.net>
Cc: Ingo Molnar <mingo@redhat.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
kernel-team@fb.com,
"open list:CONTROL GROUP (CGROUP)" <cgroups@vger.kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Paul Turner <pjt@google.com>, Li Zefan <lizefan@huawei.com>,
Linux API <linux-api@vger.kernel.org>,
Peter Zijlstra <peterz@infradead.org>,
Johannes Weiner <hannes@cmpxchg.org>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [Documentation] State of CPU controller in cgroup v2
Date: Mon, 22 Aug 2016 12:12:46 +0200 [thread overview]
Message-ID: <1471860766.4110.103.camel@gmail.com> (raw)
In-Reply-To: <20160820155659.GA16906@mtj.duckdns.org>
On Sat, 2016-08-20 at 11:56 -0400, Tejun Heo wrote:
> > > there are other reasons to enforce process granularity. One
> > > important one is isolating system-level management operations from
> > > in-process application operations. The cgroup interface, being a
> > > virtual filesystem, is very unfit for multiple independent
> > > operations taking place at the same time as most operations have to
> > > be multi-step and there is no way to synchronize multiple accessors.
> > > See also [5] Documentation/cgroup-v2.txt, "R-2. Thread Granularity"
> >
> > I don't buy this argument at all. System-level code is likely to
> > assign single process *trees*, which are a different beast entirely.
> > I.e. you fork, move the child into a cgroup, and that child and its
> > children stay in that cgroup. I don't see how the thread/process
> > distinction matters.
>
> Good point on the multi-process issue, this is something which nagged
> me a bit while working on rgroup, although I have to point out that
> the issue here is one of not going far enough rather than the approach
> being wrong. There are limitations to scoping it to individual
> processes but that doesn't negate the underlying problem or the
> usefulness of in-process control.
>
> For system-level and process-level operations to not step on each
> other's toes, they need to agree on the granularity boundary -
> system-level should be able to treat an application hierarchy as a
> single unit. A possible solution is allowing rgroup hirearchies to
> span across process boundaries and implementing cgroup migration
> operations which treat such hierarchies as a single unit. I'm not yet
> sure whether the boundary should be at program groups or rgroups.
Why is it not viable to predicate contentious lowest common denominator
restrictions upon the set of enabled controllers? If only thread
granularity controllers are enabled, from that point onward, v2
restrictions cease to make any sense, thus could be lifted, leaving
nobody cast adrift in a leaky v1 lifeboat when v2 sets sail. Or?
-Mike
next prev parent reply other threads:[~2016-08-22 10:12 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-05 17:07 [Documentation] State of CPU controller in cgroup v2 Tejun Heo
2016-08-05 17:09 ` [PATCH 1/2] sched: Misc preps for cgroup unified hierarchy interface Tejun Heo
2016-08-05 17:09 ` [PATCH 2/2] sched: Implement interface for cgroup unified hierarchy Tejun Heo
2016-08-06 9:04 ` [Documentation] State of CPU controller in cgroup v2 Mike Galbraith
2016-08-10 22:09 ` Johannes Weiner
2016-08-11 6:25 ` Mike Galbraith
2016-08-12 22:17 ` Johannes Weiner
2016-08-13 5:08 ` Mike Galbraith
2016-08-16 14:07 ` Peter Zijlstra
2016-08-16 14:58 ` Chris Mason
2016-08-16 16:30 ` Johannes Weiner
2016-08-17 9:33 ` Mike Galbraith
2016-08-16 21:59 ` Tejun Heo
2016-08-17 20:18 ` Andy Lutomirski
2016-08-20 15:56 ` Tejun Heo
2016-08-20 18:45 ` Andy Lutomirski
2016-08-29 22:20 ` Tejun Heo
2016-08-31 3:42 ` Andy Lutomirski
2016-08-31 17:32 ` Tejun Heo
2016-08-31 19:11 ` Andy Lutomirski
2016-08-31 21:07 ` Tejun Heo
2016-08-31 21:46 ` Andy Lutomirski
2016-09-03 22:05 ` Tejun Heo
2016-09-05 17:37 ` Andy Lutomirski
2016-09-06 10:29 ` Peter Zijlstra
2016-10-04 14:47 ` Tejun Heo
2016-10-05 8:07 ` Peter Zijlstra
2016-09-09 22:57 ` Tejun Heo
2016-09-10 8:54 ` Mike Galbraith
2016-09-10 10:08 ` Mike Galbraith
2016-09-30 9:06 ` Tejun Heo
2016-09-30 14:53 ` Mike Galbraith
2016-09-12 15:20 ` Austin S. Hemmelgarn
2016-09-19 21:34 ` Tejun Heo
[not found] ` <CALCETrUhpPQdyZ-6WRjdB+iLbpGBduRZMWXQtCuS+R7Cq7rygg@mail.gmail.com>
2016-09-14 20:00 ` Tejun Heo
2016-09-15 20:08 ` Andy Lutomirski
2016-09-16 7:51 ` Peter Zijlstra
2016-09-16 15:12 ` Andy Lutomirski
2016-09-16 16:19 ` Peter Zijlstra
2016-09-16 16:29 ` Andy Lutomirski
2016-09-16 16:50 ` Peter Zijlstra
2016-09-16 18:19 ` Andy Lutomirski
2016-09-17 1:47 ` Peter Zijlstra
2016-09-19 21:53 ` Tejun Heo
2016-08-31 19:57 ` Andy Lutomirski
2016-08-22 10:12 ` Mike Galbraith [this message]
2016-08-21 5:34 ` James Bottomley
2016-08-29 22:35 ` Tejun Heo
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=1471860766.4110.103.camel@gmail.com \
--to=umgwanakikbuti@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=kernel-team@fb.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=luto@amacapital.net \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=pjt@google.com \
--cc=tj@kernel.org \
--cc=torvalds@linux-foundation.org \
/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;
as well as URLs for NNTP newsgroup(s).