On 02/06/2014 06:07 PM, Michal Hocko wrote: > On Tue 04-02-14 19:27:19, Vladimir Davydov wrote: > [...] >> What does this patch change? Actually, it introduces no functional >> changes - it only remove the code trying to find an alias for a memcg >> cache, because it will fail anyway. So this is rather a cleanup. > But this also means that two different memcgs might share the same cache > and so the pages for that cache, no?
No, because in this patch I explicitly forbid to merge memcg caches by this hunk: @@ -200,9 +200,11 @@ kmem_cache_create_memcg(struct mem_cgroup *memcg, const char *name, size_t size, */ flags &= CACHE_CREATE_MASK; - s = __kmem_cache_alias(memcg, name, size, align, flags, ctor); - if (s) - goto out_unlock; + if (!memcg) { + s = __kmem_cache_alias(name, size, align, flags, ctor); + if (s) + goto out_unlock; + } Thanks. > Actually it would depend on timing > because a new page would be chaged for the current allocator. > > cachep->memcg_params->memcg == memcg would prevent from such a merge > previously AFAICS, or am I still confused? _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel