Re: [PATCH] radix-tree: account nodes to memcg only if explicitly requested

From: Vladimir Davydov
Date: Tue Aug 02 2016 - 10:48:01 EST


On Tue, Aug 02, 2016 at 01:51:12PM +0200, Michal Hocko wrote:
> On Mon 01-08-16 16:13:08, Vladimir Davydov wrote:
> > Radix trees may be used not only for storing page cache pages, so
> > unconditionally accounting radix tree nodes to the current memory cgroup
> > is bad: if a radix tree node is used for storing data shared among
> > different cgroups we risk pinning dead memory cgroups forever. So let's
> > only account radix tree nodes if it was explicitly requested by passing
> > __GFP_ACCOUNT to INIT_RADIX_TREE. Currently, we only want to account
> > page cache entries, so mark mapping->page_tree so.
> >
> > Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
>
> OK, the patch makes sense to me. Such a false sharing would be really
> tedious to debug
>
> Do we want to mark it for stable 4.6 to prevent from some pathological
> issues. The patch is simple enough.

Makes sense, expecially taking into account that kmemcg is enabled by
default now. I'll resend the patch for stable then.

>
> Acked-by: Michal Hocko <mhocko@xxxxxxxx>

Thanks!