linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Michal Hocko <mhocko@suse.cz>
To: Glauber Costa <glommer@parallels.com>
Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org,
	linux-mm@kvack.org, Dave Jones <davej@redhat.com>,
	Ben Hutchings <ben@decadent.org.uk>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Paul Turner <pjt@google.com>,
	Lennart Poettering <lennart@poettering.net>,
	Kay Sievers <kay.sievers@vrfy.org>,
	Kamezawa Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	Johannes Weiner <hannes@cmpxchg.org>, Tejun Heo <tj@kernel.org>
Subject: Re: [PATCH v2] memcg: first step towards hierarchical controller
Date: Wed, 5 Sep 2012 16:49:42 +0200	[thread overview]
Message-ID: <20120905144942.GH5388@dhcp22.suse.cz> (raw)
In-Reply-To: <504709D4.2010800@parallels.com>

On Wed 05-09-12 12:14:12, Glauber Costa wrote:
> On 09/04/2012 08:25 PM, Michal Hocko wrote:
> > On Tue 04-09-12 18:54:08, Glauber Costa wrote:
> > [...]
> >>>> I'd personally believe merging both our patches together would achieve a
> >>>> good result.
> >>>
> >>> I am still not sure we want to add a config option for something that is
> >>> meant to go away. But let's see what others think.
> >>>
> >>
> >> So what you propose in the end is that we add a userspace tweak for
> >> something that could go away, instead of a Kconfig for something that go
> >> away.
> > 
> > The tweak is necessary only if you want to have use_hierarchy=1 for all
> > cgroups without taking care about that (aka setting the attribute for
> > the first level under the root). All the users that use only one level
> > bellow root don't have to do anything at all.
> > 
> >> Way I see it, Kconfig is better because it is totally transparent, under
> >> the hood, and will give us a single location to unpatch in case/when it
> >> really goes away.
> > 
> > I guess that by the single location you mean that no other user space
> > changes would have to be done, right? If yes then this is not true
> > because there will be a lot of configurations setting this up already
> > (either by cgconfig or by other scripts). All of them will have to be
> > fixed some day.
> > 
> 
> Some userspaces, not all. And the ones who set:
> 
> They are either explicitly setting to 0, and those are the ones we need
> to find out, or they are setting to 1, which will be harmless. If they
> were all mandated to do it, fine. But they are not everywhere, and much
> many other exists that don't touch it at all. What you are proposing is
> that *all* userspace tools that use it go flip it, instead of doing it
> in the kernel.

If we want to have a big coverage then older kernels (aka distributions)
have to help here and their users cannot simply change the config. So
distributions would need to enable the config by default and we are
back...

> As I've said before, distributions have lifecycles where changes in
> behavior like this are tolerated. 

We can do that only when a new codestream is released. Config changes
are not allowed otherwise - at least here in Suse.

> Some of those lifecycles are incredibly long, in the 5+ years
> range. It could be really nice if they would never see use_hierarchy=0
> *at all*, which is much better accomplished by a kernel-side switch. A
> Kconfig option is the choice between carrying either an upstream patch
> or no patch at all (Depending on timing), and carrying a non-standard
> patch.

Can we settle on the following 3 steps?
1) warn about "flat" hierarchies (give it X releases) - I will push it
   to as many Suse code streams as possible (hope other distributions
   could do the same)
2) flip the default on the root cgroup & warn when somebody tries to
   change it to 0 (give it another X releases) that the knob will be
   removed
3) remove the knob and the whole nonsese
4) revert 3 if somebody really objects
-- 
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2012-09-05 14:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-03 15:46 Glauber Costa
2012-09-03 16:41 ` Ben Hutchings
2012-09-04  8:29   ` Glauber Costa
2012-09-03 17:08 ` Michal Hocko
2012-09-04  8:34   ` Glauber Costa
2012-09-04 13:09     ` Michal Hocko
2012-09-04 13:27       ` Glauber Costa
2012-09-04 14:35         ` Michal Hocko
2012-09-04 14:37           ` Glauber Costa
2012-09-04 14:54             ` Michal Hocko
2012-09-04 14:54               ` Glauber Costa
2012-09-04 16:25                 ` Michal Hocko
2012-09-05  8:14                   ` Glauber Costa
2012-09-05 14:49                     ` Michal Hocko [this message]
2012-09-05 20:12                       ` Tejun Heo
2012-09-06 12:06                         ` Michal Hocko
2012-09-06 12:09                           ` Glauber Costa
2012-09-06 12:18                             ` Michal Hocko
2012-09-07  9:45                               ` Glauber Costa
2012-09-04 18:22           ` 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=20120905144942.GH5388@dhcp22.suse.cz \
    --to=mhocko@suse.cz \
    --cc=a.p.zijlstra@chello.nl \
    --cc=ben@decadent.org.uk \
    --cc=cgroups@vger.kernel.org \
    --cc=davej@redhat.com \
    --cc=glommer@parallels.com \
    --cc=hannes@cmpxchg.org \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=kay.sievers@vrfy.org \
    --cc=lennart@poettering.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=pjt@google.com \
    --cc=tj@kernel.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