diff options
author | Tejun Heo <tj@kernel.org> | 2011-02-16 12:13:06 +0100 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2011-02-16 12:13:06 +0100 |
commit | ffe77a4605fb2588f8666850ad3e3b196241658f (patch) | |
tree | 7f4218d2658a84180e9e11d67636db27d6881f83 /arch/x86/mm/srat_64.c | |
parent | d8fc3afc49bb226c20e37f48a4ddd493cd092837 (diff) | |
download | linux-3.10-ffe77a4605fb2588f8666850ad3e3b196241658f.tar.gz linux-3.10-ffe77a4605fb2588f8666850ad3e3b196241658f.tar.bz2 linux-3.10-ffe77a4605fb2588f8666850ad3e3b196241658f.zip |
x86-64, NUMA: Restructure initmem_init()
Reorganize initmem_init() such that,
* Different NUMA init methods are iterated in a consistent way.
* Each iteration re-initializes all the parameters and different
method can be tried after a failure.
* Dummy init is handled the same as other methods.
Apart from how retry after failure, this patch doesn't change the
behavior. The call sequences are kept equivalent across the
conversion.
After the change, bad_srat() doesn't need to clear apic to node
mapping or worry about numa_off. Simplified accordingly.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Cyrill Gorcunov <gorcunov@gmail.com>
Cc: Shaohui Zheng <shaohui.zheng@intel.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/mm/srat_64.c')
-rw-r--r-- | arch/x86/mm/srat_64.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/x86/mm/srat_64.c b/arch/x86/mm/srat_64.c index 56b92635d87..597e011cfb5 100644 --- a/arch/x86/mm/srat_64.c +++ b/arch/x86/mm/srat_64.c @@ -78,8 +78,6 @@ static __init void bad_srat(void) int i; printk(KERN_ERR "SRAT: SRAT not used.\n"); acpi_numa = -1; - for (i = 0; i < MAX_LOCAL_APIC; i++) - set_apicid_to_node(i, NUMA_NO_NODE); for (i = 0; i < MAX_NUMNODES; i++) { nodes[i].start = nodes[i].end = 0; nodes_add[i].start = nodes_add[i].end = 0; @@ -89,7 +87,7 @@ static __init void bad_srat(void) static __init inline int srat_disabled(void) { - return numa_off || acpi_numa < 0; + return acpi_numa < 0; } /* Callback for SLIT parsing */ |