aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/x86_64/mm.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-12-28 09:36:51 +0000
committerKeir Fraser <keir.fraser@citrix.com>2009-12-28 09:36:51 +0000
commit13d0032801beedd1e04ffd06b4a520296eddba6f (patch)
treeca9dff66e309833129427eb9b0415308811253ca /xen/arch/x86/x86_64/mm.c
parent5454f280cdd770c9394ac9a430a477e8b63e16a6 (diff)
downloadxen-13d0032801beedd1e04ffd06b4a520296eddba6f.tar.gz
xen-13d0032801beedd1e04ffd06b4a520296eddba6f.tar.bz2
xen-13d0032801beedd1e04ffd06b4a520296eddba6f.zip
numa: Correct handling node with CPU populated but no memory populated
In changeset 20599, the node that has no memory populated is marked parsed, but not online. However, if there are CPU populated in this node, the corresponding CPU mapping (i.e. the cpu_to_node) is still setup to the offline node, this will cause trouble for memory allocation. This patch changes the init_cpu_to_node() and srant_detect_node(), to considering the node is offlined situation. Now the apicid_to_node is only used to keep the mapping between cpu/node provided by BIOS, and should not be used for memory allocation anymore. One thing left is to update the cpu_to_node mapping after memory populated by memory hot-add. Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
Diffstat (limited to 'xen/arch/x86/x86_64/mm.c')
-rw-r--r--xen/arch/x86/x86_64/mm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index dfa12ad171..03b61cc34f 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -997,7 +997,7 @@ void __init subarch_init_memory(void)
}
if ( setup_compat_arg_xlat(smp_processor_id(),
- apicid_to_node[boot_cpu_physical_apicid]) )
+ cpu_to_node[0]) )
panic("Could not setup argument translation area");
}