提交 82d1bb72 编写于 作者: J James Puthukattukaran 提交者: Andi Kleen

[PATCH] x86-64: x86-64 system crashes when no memory populating Node 0

I have a 4 socket AMD Operton system. The 2.6.18 kernel I have crashes
when there is no memory in node0.

AK: changed call to _nopanic

Cc: Andi Kleen <ak@suse.de>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NAndi Kleen <ak@suse.de>
上级 1c3d99c1
...@@ -51,7 +51,6 @@ static void __init insert_aperture_resource(u32 aper_base, u32 aper_size) ...@@ -51,7 +51,6 @@ static void __init insert_aperture_resource(u32 aper_base, u32 aper_size)
static u32 __init allocate_aperture(void) static u32 __init allocate_aperture(void)
{ {
pg_data_t *nd0 = NODE_DATA(0);
u32 aper_size; u32 aper_size;
void *p; void *p;
...@@ -65,12 +64,12 @@ static u32 __init allocate_aperture(void) ...@@ -65,12 +64,12 @@ static u32 __init allocate_aperture(void)
* Unfortunately we cannot move it up because that would make the * Unfortunately we cannot move it up because that would make the
* IOMMU useless. * IOMMU useless.
*/ */
p = __alloc_bootmem_node(nd0, aper_size, aper_size, 0); p = __alloc_bootmem_nopanic(aper_size, aper_size, 0);
if (!p || __pa(p)+aper_size > 0xffffffff) { if (!p || __pa(p)+aper_size > 0xffffffff) {
printk("Cannot allocate aperture memory hole (%p,%uK)\n", printk("Cannot allocate aperture memory hole (%p,%uK)\n",
p, aper_size>>10); p, aper_size>>10);
if (p) if (p)
free_bootmem_node(nd0, __pa(p), aper_size); free_bootmem(__pa(p), aper_size);
return 0; return 0;
} }
printk("Mapping aperture over %d KB of RAM @ %lx\n", printk("Mapping aperture over %d KB of RAM @ %lx\n",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册