[PATCH] create mm/Kconfig for arch-independent memory options
Dave Hansen [Thu, 23 Jun 2005 07:07:42 +0000 (00:07 -0700)]
With sparsemem being introduced, we need a central place for new
memory-related .config options: mm/Kconfig.  This allows us to remove many
of the duplicated arch-specific options.

The new option, CONFIG_FLATMEM, is there to enable us to detangle NUMA and
DISCONTIGMEM.  This is a requirement for sparsemem because sparsemem uses
the NUMA code without the presence of DISCONTIGMEM.  The sparsemem patches
use CONFIG_FLATMEM in generic code, so this patch is a requirement before
applying them.

Almost all places that used to do '#ifndef CONFIG_DISCONTIGMEM' should use
'#ifdef CONFIG_FLATMEM' instead.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

mm/Kconfig [new file with mode: 0644]

diff --git a/mm/Kconfig b/mm/Kconfig
new file mode 100644 (file)
index 0000000..69caa9d
--- /dev/null
@@ -0,0 +1,25 @@
+choice
+       prompt "Memory model"
+       default FLATMEM
+       default SPARSEMEM if ARCH_SPARSEMEM_DEFAULT
+       default DISCONTIGMEM if ARCH_DISCONTIGMEM_DEFAULT
+
+config FLATMEM
+       bool "Flat Memory"
+       depends on !ARCH_DISCONTIGMEM_ENABLE || ARCH_FLATMEM_ENABLE
+       help
+         This option allows you to change some of the ways that
+         Linux manages its memory internally.  Most users will
+         only have one option here: FLATMEM.  This is normal
+         and a correct option.
+
+         If unsure, choose this option over any other.
+
+config DISCONTIGMEM
+       bool "Discontigious Memory"
+       depends on ARCH_DISCONTIGMEM_ENABLE
+       help
+         If unsure, choose "Flat Memory" over this option.
+
+endchoice
+