From: Chris Down <chris@chrisdown.name>
To: Waiman Long <longman@redhat.com>
Cc: Tejun Heo <tj@kernel.org>, Li Zefan <lizefan@huawei.com>,
Johannes Weiner <hannes@cmpxchg.org>,
Jonathan Corbet <corbet@lwn.net>,
Michal Hocko <mhocko@kernel.org>,
Vladimir Davydov <vdavydov.dev@gmail.com>,
linux-kernel@vger.kernel.org, cgroups@vger.kernel.org,
linux-doc@vger.kernel.org, linux-mm@kvack.org,
Andrew Morton <akpm@linux-foundation.org>,
Roman Gushchin <guro@fb.com>, Shakeel Butt <shakeelb@google.com>,
Kirill Tkhai <ktkhai@virtuozzo.com>,
Aaron Lu <aaron.lu@intel.com>
Subject: Re: [RFC PATCH 0/2] mm/memcontrol: Finer-grained memory control
Date: Wed, 10 Apr 2019 22:38:24 +0100 [thread overview]
Message-ID: <20190410213824.GA13638@chrisdown.name> (raw)
In-Reply-To: <20190410191321.9527-1-longman@redhat.com>
Hi Waiman,
Waiman Long writes:
>The current control mechanism for memory cgroup v2 lumps all the memory
>together irrespective of the type of memory objects. However, there
>are cases where users may have more concern about one type of memory
>usage than the others.
I have concerns about this implementation, and the overall idea in general. We
had per-class memory limiting in the cgroup v1 API, and it ended up really
poorly, and resulted in a situation where it's really hard to compose a usable
system out of it any more.
A major part of the restructure in cgroup v2 has been to simplify things so
that it's more easy to understand for service owners and sysadmins. This was
intentional, because otherwise the system overall is hard to make into
something that does what users *really* want, and users end up with a lot of
confusion, misconfiguration, and generally an inability to produce a coherent
system, because we've made things too hard to piece together.
In general, for purposes of resource control, I'm not convinced that it makes
sense to limit only one kind of memory based on prior experience with v1. Can
you give a production use case where this would be a clear benefit, traded off
against the increase in complexity to the API?
>For simplicity, the limit is not hierarchical and applies to only tasks
>in the local memory cgroup.
We've made an explicit effort to make all things hierarchical -- this confuses
things further. Even if we did have something like this, it would have to
respect the hierarchy, we really don't want to return to the use_hierarchy
days where users, sysadmins, and even ourselves are confused by the resource
control semantics that are supposed to be achieved.
>We have customer request to limit memory consumption on anonymous memory
>only as they said the feature was available in other OSes like Solaris.
What's the production use case where this is demonstrably providing clear
benefits in terms of resource control? How can it compose as part of an easy to
understand, resource controlling system? I'd like to see a lot more information
on why this is needed, and the usability and technical tradeoffs considered.
Thanks,
Chris
next prev parent reply other threads:[~2019-04-10 21:38 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-10 19:13 [RFC PATCH 0/2] mm/memcontrol: Finer-grained memory control Waiman Long
2019-04-10 19:13 ` [RFC PATCH 1/2] mm/memcontrol: Finer-grained control for subset of allocated memory Waiman Long
2019-04-10 19:13 ` [RFC PATCH 2/2] mm/memcontrol: Add a new MEMCG_SUBSET_HIGH event Waiman Long
2019-04-10 19:54 ` [RFC PATCH 0/2] mm/memcontrol: Finer-grained memory control Michal Hocko
2019-04-11 14:02 ` Waiman Long
2019-04-11 15:19 ` Michal Hocko
2019-04-11 15:24 ` Michal Hocko
2019-04-11 15:31 ` Johannes Weiner
2019-04-10 21:38 ` Chris Down [this message]
2019-04-11 14:22 ` Waiman Long
2019-04-11 21:21 ` Roman Gushchin
2019-04-11 14:37 ` Kirill Tkhai
2019-04-11 14:55 ` Waiman Long
2019-04-11 15:35 ` Kirill Tkhai
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=20190410213824.GA13638@chrisdown.name \
--to=chris@chrisdown.name \
--cc=aaron.lu@intel.com \
--cc=akpm@linux-foundation.org \
--cc=cgroups@vger.kernel.org \
--cc=corbet@lwn.net \
--cc=guro@fb.com \
--cc=hannes@cmpxchg.org \
--cc=ktkhai@virtuozzo.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lizefan@huawei.com \
--cc=longman@redhat.com \
--cc=mhocko@kernel.org \
--cc=shakeelb@google.com \
--cc=tj@kernel.org \
--cc=vdavydov.dev@gmail.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;
as well as URLs for NNTP newsgroup(s).