Re: RFC [Patch] Remove "please try 'cgroup_disable=memory' optionif you don't want memory cgroups" printk at boot time.

From: Heiko Carstens
Date: Wed Apr 07 2010 - 03:59:56 EST


On Thu, Apr 01, 2010 at 10:23:10AM +0530, Balbir Singh wrote:
> * KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> [2010-04-01 10:48:59]:
>
> > On Wed, 31 Mar 2010 13:57:46 -0400
> > Rik van Riel <riel@xxxxxxxxxx> wrote:
> >
> > > On 03/31/2010 11:54 AM, Larry Woodman wrote:
> > > > On Wed, 2010-03-31 at 11:28 -0400, Larry Woodman wrote:
> > > >> We are considering removing this printk at boot time from RHEL because
> > > >> it will confuse customers, encourage them to change the boot parameters
> > > >> and generate extraneous support calls. Its documented in
> > > >> Documentation/kernel-parameters.txt anyway. Any thoughts???
> > >
> > > Yeah, that is a strange boot message...
> > >
> > > Acked-by: Rik van Riel <riel@xxxxxxxxxx>
> > >
> > please CC linux-mm and maintainers.
> >
> > Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
> >
> > It have been there for a year and I think memory usage by page_cgroup
> > will not surprise linux kernel users, more.
> >
> > Assume x86-32.
> >
> > RHEL allows amount of memory up to 16G, right?
> >
> > without memcg: memmap uses 32bytes * 16G/4k = 128M.
> > with memcg: memmap+page_cgroup uses (32+20) bytes * 16G/4k = 208M.
> >
> > I thought this may cause OOM in ZONE_NORMAL. Then, I added it when I wrote
> > original patch. This kind of memory eater can cause trouble when it pops
> > up suddenly. But I think 'one year' can be an excuse.
> >
>
> I've seen this issue come up on multiple machines, I think the printk
> is useful. However, we might need to change the panic() to a big fat
> warning and disable the memcg controller if we fail to allocate memory
> in page_cgroup_init_flatmem().

Probably a stupid question: but isn't it possible to allocate the huge
amounts of memory only if somebody activates memcg during runtime?
And then allocate everything using vmalloc?
But that probably doesn't work, since you need to record everything
from the boot of the system, I would guess?
Just wondering because we do everything to not even waste a single bit
in struct page and all of a sudden on the enterprise distros we allocate
(by default!) 40 additional bytes per page.
--
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/