Split CONFIG_NUMA_EMU and CONFIG_K8_NUMA because they are independent.
Signed-off-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
config K8_NUMA
bool "K8 NUMA support"
+ select NUMA
depends on SMP
help
Enable NUMA (Non Unified Memory Architecture) support for
This code is recommended on all multiprocessor Opteron systems
and normally doesn't hurt on others.
+config NUMA_EMU
+ bool "NUMA emulation support"
+ select NUMA
+ depends on SMP
+ help
+ Enable NUMA emulation. A flat machine will be split
+ into virtual nodes when booted with "numa=fake=N", where N is the
+ number of nodes. This is only useful for debugging.
+
config DISCONTIGMEM
bool
- depends on K8_NUMA
+ depends on NUMA
default y
config NUMA
bool
- depends on K8_NUMA
- default y
+ default n
config HAVE_DEC_LOCK
bool
set_bit(0, &node_to_cpumask[cpu_to_node(0)]);
}
+#ifdef CONFIG_NUMA_EMU
int numa_fake __initdata = 0;
/* Numa emulation */
numa_init_array();
return 0;
}
+#endif
void __init numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn)
{
int i;
+#ifdef CONFIG_NUMA_EMU
if (numa_fake && !numa_emulation(start_pfn, end_pfn))
return;
+#endif
#ifdef CONFIG_K8_NUMA
if (!numa_off && !k8_scan_nodes(start_pfn<<PAGE_SHIFT, end_pfn<<PAGE_SHIFT))