• Johannes Weiner's avatar
    mm: memcontrol: fix warning when allocating the root cgroup · 9f457179
    Johannes Weiner authored
    Commit 3e38e0aa ("mm: memcg: charge memcg percpu memory to the
    parent cgroup") adds memory tracking to the memcg kernel structures
    themselves to make cgroups liable for the memory they are consuming
    through the allocation of child groups (which can be significant).
    
    This code is a bit awkward as it's spread out through several functions:
    The outermost function does memalloc_use_memcg(parent) to set up
    current->active_memcg, which designates which cgroup to charge, and the
    inner functions pass GFP_ACCOUNT to request charging for specific
    allocations.  To make sure this dependency is satisfied at all times -
    to make sure we don't randomly charge whoever is calling the functions -
    the inner functions warn on !current->active_memcg.
    
    However, this triggers a false warning when the root memcg itself is
    allocated.  No parent exists in this case, and so current->active_memcg
    is rightfully NULL.  It's a false positive, not indicative of a bug.
    
    Delete the warnings for now, we can revisit this later.
    
    Fixes: 3e38e0aa ("mm: memcg: charge memcg percpu memory to the parent cgroup")
    Signed-off-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
    Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
    Acked-by: default avatarRoman Gushchin <guro@fb.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    9f457179
memcontrol.c 190 KB