From: Glauber Costa <glommer@parallels.com>
To: linux-mm@kvack.org
Cc: cgroups@vger.kernel.org, Mel Gorman <mgorman@suse.de>,
Tejun Heo <tj@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Michal Hocko <mhocko@suse.cz>,
Johannes Weiner <hannes@cmpxchg.org>,
kamezawa.hiroyu@jp.fujitsu.com, Christoph Lameter <cl@linux.com>,
David Rientjes <rientjes@google.com>,
Pekka Enberg <penberg@kernel.org>,
devel@openvz.org
Subject: [PATCH v4 00/19] slab accounting for memcg
Date: Fri, 12 Oct 2012 17:40:54 +0400 [thread overview]
Message-ID: <1350049273-17213-1-git-send-email-glommer@parallels.com> (raw)
This is a followup to the previous kmem series. I divided them logically
so it gets easier for reviewers. But I believe they are ready to be merged
together (although we can do a two-pass merge if people would prefer)
Throwaway git tree found at:
git://git.kernel.org/pub/scm/linux/kernel/git/glommer/memcg.git kmemcg-slab
I've bundled the following important changes since last submission:
* no more messing with the cache name after destruction: aggregated figures
are shown in /proc/slabinfo.
* memory.kmem.slabinfo file with memcg-specific cache information during its
lifespan.
* full slub attribute propagation.
* reusing the standard workqueue mechanism.
* cache-side indexing, instead of memcg-side indexing. The memcg css_id serves
as an index, and we don't need extra indexes for that.
* struct memcg_cache_params no longer bundled in struct kmem_cache: We now will
have only a pointer in the struct, allowing memory consumption when disable to
fall down ever further.
Patches need to be adjusted to cope with those changes, but other than that,
look the same - just a lot simpler.
I also put quite some effort to overcome my writing disability and get some
decent changelogs in place.
For a detailed explanation about this whole effort, please refer to my previous
post (https://lkml.org/lkml/2012/10/8/119)
*** BLURB HERE ***
Glauber Costa (19):
slab: Ignore internal flags in cache creation
move slabinfo processing to slab_common.c
move print_slabinfo_header to slab_common.c
sl[au]b: process slabinfo_show in common code
slab: don't preemptively remove element from list in cache destroy
slab/slub: struct memcg_params
consider a memcg parameter in kmem_create_cache
Allocate memory for memcg caches whenever a new memcg appears
memcg: infrastructure to match an allocation to the right cache
memcg: skip memcg kmem allocations in specified code regions
sl[au]b: always get the cache from its page in kfree
sl[au]b: Allocate objects from memcg cache
memcg: destroy memcg caches
memcg/sl[au]b Track all the memcg children of a kmem_cache.
memcg/sl[au]b: shrink dead caches
Aggregate memcg cache values in slabinfo
slab: propagate tunables values
slub: slub-specific propagation changes.
Add slab-specific documentation about the kmem controller
Documentation/cgroups/memory.txt | 7 +
include/linux/memcontrol.h | 88 ++++++
include/linux/sched.h | 1 +
include/linux/slab.h | 47 +++
include/linux/slab_def.h | 3 +
include/linux/slub_def.h | 19 +-
init/Kconfig | 2 +-
mm/memcontrol.c | 599 +++++++++++++++++++++++++++++++++++++--
mm/slab.c | 210 ++++++--------
mm/slab.h | 157 +++++++++-
mm/slab_common.c | 224 ++++++++++++++-
mm/slub.c | 193 ++++++++-----
12 files changed, 1311 insertions(+), 239 deletions(-)
--
1.7.11.4
--
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>
next reply other threads:[~2012-10-12 13:41 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-12 13:40 Glauber Costa [this message]
2012-10-12 13:40 ` [PATCH v4 01/19] slab: Ignore internal flags in cache creation Glauber Costa
2012-10-12 13:40 ` [PATCH v4 02/19] move slabinfo processing to slab_common.c Glauber Costa
2012-10-12 13:40 ` [PATCH v4 03/19] move print_slabinfo_header " Glauber Costa
2012-10-12 13:40 ` [PATCH v4 04/19] sl[au]b: process slabinfo_show in common code Glauber Costa
2012-10-12 13:40 ` [PATCH v4 05/19] slab: don't preemptively remove element from list in cache destroy Glauber Costa
2012-10-12 13:41 ` [PATCH v4 06/19] slab/slub: struct memcg_params Glauber Costa
2012-10-12 13:41 ` [PATCH v4 07/19] consider a memcg parameter in kmem_create_cache Glauber Costa
2012-10-12 13:41 ` [PATCH v4 08/19] Allocate memory for memcg caches whenever a new memcg appears Glauber Costa
2012-10-12 13:41 ` [PATCH v4 09/19] memcg: infrastructure to match an allocation to the right cache Glauber Costa
2012-10-12 13:41 ` [PATCH v4 10/19] memcg: skip memcg kmem allocations in specified code regions Glauber Costa
2012-10-12 13:41 ` [PATCH v4 11/19] sl[au]b: always get the cache from its page in kfree Glauber Costa
2012-10-12 13:41 ` [PATCH v4 12/19] sl[au]b: Allocate objects from memcg cache Glauber Costa
2012-10-12 13:41 ` [PATCH v4 13/19] memcg: destroy memcg caches Glauber Costa
2012-10-12 13:41 ` [PATCH v4 14/19] memcg/sl[au]b Track all the memcg children of a kmem_cache Glauber Costa
2012-10-12 13:41 ` [PATCH v4 15/19] memcg/sl[au]b: shrink dead caches Glauber Costa
2012-10-12 13:41 ` [PATCH v4 16/19] Aggregate memcg cache values in slabinfo Glauber Costa
2012-10-12 13:41 ` [PATCH v4 17/19] slab: propagate tunables values Glauber Costa
2012-10-12 13:41 ` [PATCH v4 18/19] slub: slub-specific propagation changes Glauber Costa
2012-10-12 13:41 ` [PATCH v4 19/19] Add slab-specific documentation about the kmem controller Glauber Costa
2012-10-18 11:38 ` [PATCH v4 00/19] slab accounting for memcg Glauber Costa
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=1350049273-17213-1-git-send-email-glommer@parallels.com \
--to=glommer@parallels.com \
--cc=akpm@linux-foundation.org \
--cc=cgroups@vger.kernel.org \
--cc=cl@linux.com \
--cc=devel@openvz.org \
--cc=hannes@cmpxchg.org \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=mhocko@suse.cz \
--cc=penberg@kernel.org \
--cc=rientjes@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