Re: [PATCH -mm 1/4] sl[au]b: do not charge large allocations to memcg

From: Michal Hocko
Date: Thu Mar 27 2014 - 16:41:04 EST


On Thu 27-03-14 11:34:10, Vladimir Davydov wrote:
> Hi Michal,
>
> On 03/27/2014 01:53 AM, Michal Hocko wrote:
> > On Wed 26-03-14 19:28:04, Vladimir Davydov wrote:
> >> We don't track any random page allocation, so we shouldn't track kmalloc
> >> that falls back to the page allocator.
> > Why did we do that in the first place? d79923fad95b (sl[au]b: allocate
> > objects from memcg cache) didn't tell me much.
>
> I don't know, we'd better ask Glauber about that.
>
> > How is memcg_kmem_skip_account removal related?
>
> The comment this patch removes along with the memcg_kmem_skip_account
> check explains that pretty well IMO. In short, we only use
> memcg_kmem_skip_account to prevent kmalloc's from charging, which is
> crucial for recursion-avoidance in memcg_kmem_get_cache. Since we don't
> charge pages allocated from a root (not per-memcg) cache, from the first
> glance it would be enough to check for memcg_kmem_skip_account only in
> memcg_kmem_get_cache and return the root cache if it's set. However, for
> we can also kmalloc w/o issuing memcg_kmem_get_cache (kmalloc_large), we
> also need this check in memcg_kmem_newpage_charge. This patch removes
> kmalloc_large accounting, so we don't need this check anymore.

Document that in the changelog please.
--
Michal Hocko
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/