Hi, Currently memcg_cache_id (mem_cgroup->kmemcg_id), which is used for indexing memcg_caches arrays, is released only on css free. As a result, offline css, whose number is actually limited only by amount of free RAM, will occupy slots in these arrays making them grow larger and larger even if there's only a few kmem active memory cgroups out there.
This patch set makes memcg release memcg_cache_id on css offline. This way the memcg_caches arrays size will be limited by the number of alive kmem-active memory cgroups, which is much better. The work is actually done in patch 6 while patches 1-5 only prepare memcg and slab subsystems to this change. Thanks, Vladimir Davydov (6): slub: remove kmemcg id from create_unique_id slab: use mem_cgroup_id for per memcg cache naming memcg: make memcg_cache_id static memcg: add pointer to owner cache to memcg_cache_params memcg: keep all children of each root cache on a list memcg: release memcg_cache_id on css offline include/linux/memcontrol.h | 9 +--- include/linux/slab.h | 7 ++- mm/memcontrol.c | 112 +++++++++++++++++++++++++++----------------- mm/slab.c | 40 +++++++++------- mm/slab_common.c | 44 ++++++++--------- mm/slub.c | 45 +++++++++--------- 6 files changed, 140 insertions(+), 117 deletions(-) -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

