Re: crash in kmem_cache_init
From: Christoph Lameter <hidden>
Date: 2008-01-22 22:57:39
Also in:
linux-mm, lkml
On Tue, 22 Jan 2008, Mel Gorman wrote:
quoted
quoted
Whatever this was a problem fixed in the past or not, it's broken again now :( . It's possible that there is a __GFP_THISNODE that can be dropped early at boot-time that would also fix this problem in a way that doesn't affect runtime (like altering cache_grow in my patch does).The dropping of GFP_THISNODE has the same effect as your patch.The dropping of it totally? If so, this patch might fix a boot but it'll potentially be a performance regression on NUMA machines that only have nodes with memory, right?
No the dropping during early allocations.,
o 0 o 2 Nodes with regular memory o 2 Current running CPU 0 is associated with node 0 Current node is 0 So node 2 has regular memory but it's trying to use node 0 at a glance. I've attached the patch I used against 2.6.24-rc8. It includes the revert.
We need the current processor to be attached to a node that has memory. We cannot fall back that early because the structures for the other nodes do not exist yet.
Online nodes o 0 o 2 Nodes with regular memory o 2 Current running CPU 0 is associated with node 0 Current node is 0 o kmem_list3_init
This needs to be node 2.
[c0000000005c3b40] c0000000000dadec .cache_grow+0x7c/0x338 [c0000000005c3c00] c0000000000db54c .fallback_alloc+0x1c0/0x224
Fallback during bootstrap.