On Wed, 23 Jan 2008, Pekka J Enberg wrote:
I still think Christoph's kmem_getpages() patch is correct (to fix
cache_grow() oops) but I overlooked the fact that none the callers of
____cache_alloc_node() deal with bootstrapping (with the exception of
__cache_alloc_node() that even has a comment about it).
My patch is useless. kmem_getpages called with nodeid == -1 falls back
correctly to the available node. The problem is that the node structures
for the page does not exist.
But what I am really wondering about is, why wasn't the
N_NORMAL_MEMORY revert enough? I assume this used to work before so what
more do we need to revert for 2.6.24?
I think that is because SLUB relaxed the requirements on having regular
memory on the boot node. Now the expectation is that SLAB can do the same.