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

From: Michal Hocko
Date: Tue Nov 04 2014 - 08:41:20 EST


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.
"

> Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx>
> ---
> init/Kconfig | 12 ------------
> 1 file changed, 12 deletions(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 01b7f2a6abf7..d68d8b0780b3 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -983,18 +983,6 @@ config MEMCG
> Provides a memory resource controller that manages both anonymous
> memory and page cache. (See Documentation/cgroups/memory.txt)
>
> - Note that setting this option increases fixed memory overhead
> - associated with each page of memory in the system. By this,
> - 8(16)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory
> - usage tracking struct at boot. Total amount of this is printed out
> - at boot.
> -
> - Only enable when you're ok with these trade offs and really
> - sure you need the memory resource controller. Even when you enable
> - this, you can set "cgroup_disable=memory" at your boot option to
> - disable memory resource controller and you can avoid overheads.
> - (and lose benefits of memory resource controller)
> -
> config MEMCG_SWAP
> bool "Memory Resource Controller Swap Extension"
> depends on MEMCG && SWAP
> --
> 2.1.3
>

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