Re: [patch 1/3] mm: embed the memcg pointer directly into struct page

From: Michal Hocko
Date: Tue Nov 04 2014 - 10:01:10 EST


On Tue 04-11-14 09:09:37, Johannes Weiner wrote:
> On Tue, Nov 04, 2014 at 02:41:10PM +0100, Michal Hocko wrote:
> > On Tue 04-11-14 08:27:01, Johannes Weiner wrote:
> > > From: Johannes Weiner <hannes@xxxxxxxxxxx>
> > > Subject: [patch] mm: move page->mem_cgroup bad page handling into generic code fix
> > >
> > > Remove obsolete memory saving recommendations from the MEMCG Kconfig
> > > help text.
> >
> > The memory overhead is still there. So I do not think it is good to
> > remove the message altogether. The current overhead might be 4 or 8B
> > depending on the configuration. What about
> > "
> > Note that setting this option might increase fixed memory
> > overhead associated with each page descriptor in the system.
> > The memory overhead depends on the architecture and other
> > configuration options which have influence on the size and
> > alignment on the page descriptor (struct page). Namely
> > CONFIG_SLUB has a requirement for page alignment to two words
> > which in turn means that 64b systems might not see any memory
> > overhead as the additional data fits into alignment. On the
> > other hand 32b systems might see 8B memory overhead.
> > "
>
> What difference does it make whether this feature maybe costs an extra
> pointer per page or not? These texts are supposed to help decide with
> the selection, but this is not a "good to have, if affordable" type of
> runtime debugging option. You either need cgroup memory accounting
> and limiting or not. There is no possible trade-off to be had.

If you are compiling the kernel for your specific usecase then it
is clear. You enable only what you really need/want. But if you are
providing a pre-built kernel and considering which features to enable
then an information about overhead might be useful. You can simply
disable the feature for memory restricted kernel flavors.

> Slub and numa balancing don't mention this, either, simply because
> this cost is negligible or irrelevant when it comes to these knobs.

I agree that the overhead seems negligible but does it hurt us to
mention it though?

--
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/