Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0835ab53 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds
Browse files

cgroup memory controller: document huge memory/cache overhead in Kconfig



Document huge memory/cache overhead of memory controller in Kconfig

I was a little surprised that 2.6.25-rc* increased struct page for the
memory controller.  At least on many x86-64 machines it will not fit into a
single cache line now anymore and also costs considerable amounts of RAM.
At earlier review I remembered asking for a external data structure for
this.

It's also quite unobvious that a innocent looking Kconfig option with a
single line Kconfig description has such a negative effect.

This patch attempts to document these disadvantages at least so that users
configuring their kernel can make a informed decision.

Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Cc: Balbir Singh <balbir@in.ibm.com>
Acked-by: default avatarPaul Menage <menage@google.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 00d62961
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -394,6 +394,14 @@ config CGROUP_MEM_CONT
	  Provides a memory controller that manages both page cache and
	  RSS memory.

	  Note that setting this option increases fixed memory overhead
	  associated with each page of memory in the system by 4/8 bytes
	  and also increases cache misses because struct page on many 64bit
	  systems will not fit into a single cache line anymore.

	  Only enable when you're ok with these trade offs and really
	  sure you need the memory controller.

config PROC_PID_CPUSET
	bool "Include legacy /proc/<pid>/cpuset file"
	depends on CPUSETS