Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
On Wed, 23 Jan 2008, Nishanth Aravamudan wrote: > Right, so it might have functioned before, but the correctness was > wobbly at best... Certainly the memoryless patch series has tightened > that up, but we missed these SLAB issues. > > I see that your patch fixed Olaf's machine, Pekka. Nice work

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Nishanth Aravamudan
On 23.01.2008 [13:14:26 -0800], Christoph Lameter wrote: > On Wed, 23 Jan 2008, Pekka Enberg wrote: > > > I think Mel said that their configuration did work with 2.6.23 > > although I also wonder how that's possible. AFAIK there has been some > > changes in the page allocator that might explain th

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
On Wed, 23 Jan 2008, Pekka Enberg wrote: > I think Mel said that their configuration did work with 2.6.23 > although I also wonder how that's possible. AFAIK there has been some > changes in the page allocator that might explain this. That is, if > kmem_getpages() returned pages for memoryless nod

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka Enberg
Hi, On Jan 23, 2008 9:52 PM, Nishanth Aravamudan <[EMAIL PROTECTED]> wrote: > On at least one of the machines in question, wasn't it the case that > node 0 had all the memory and node 1 had all the CPUs? In that case, you > would have to boot off a memoryless node? And as long as that is a > physi

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Nishanth Aravamudan
On 23.01.2008 [19:29:15 +0200], Pekka J Enberg wrote: > Hi, > > On Wed, 23 Jan 2008, Mel Gorman wrote: > > Applied in combination with the N_NORMAL_MEMORY revert and it fails to > > boot. Console is as follows; > > Thanks for testing! > > On Wed, 23 Jan 2008, Mel Gorman wrote: > > [c05c3

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
On Wed, 23 Jan 2008, Pekka J Enberg wrote: > Fine. But, why are we hitting fallback_alloc() in the first place? It's > definitely not because of missing ->nodelists as we do: > > cache_cache.nodelists[node] = &initkmem_list3[CACHE_CACHE]; > > before attempting to set up kmalloc caches.

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
On Wed, 23 Jan 2008, Mel Gorman wrote: > This patch adds the necessary checks to make sure a kmem_list3 exists for > the preferred node used when growing the cache. If the preferred node has > no nodelist then the currently running node is used instead. This > problem only affects the SLAB allocat

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
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

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Christoph Lameter
On Wed, 23 Jan 2008, Pekka J Enberg wrote: > Furthermore, don't let kmem_getpages() call alloc_pages_node() if nodeid > passed > to it is -1 as the latter will always translate that to numa_node_id() which > might not have ->nodelist that caused the invocation of fallback_alloc() in > the > firs

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka J Enberg
On Wed, 23 Jan 2008, Pekka J Enberg wrote: > As far as I can tell, there are two ways to fix this: [snip] > (2) initialize cache_cache.nodelists with initmem_list3 equivalents > for *each node hat has normal memory* An untested patch follows: --- mm/slab.c | 39 -

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka J Enberg
Hi, On Wed, 23 Jan 2008, Mel Gorman wrote: > Applied in combination with the N_NORMAL_MEMORY revert and it fails to > boot. Console is as follows; Thanks for testing! On Wed, 23 Jan 2008, Mel Gorman wrote: > [c05c3b40] c00dadb4 .cache_grow+0x7c/0x338 > [c05c3c00] c00

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Mel Gorman
On (23/01/08 16:49), Pekka J Enberg didst pronounce: > Hi, > > 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 bo

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka J Enberg
Hi, 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

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Mel Gorman
On (23/01/08 15:27), Olaf Hering didst pronounce: > On Wed, Jan 23, Mel Gorman wrote: > > > This patch in combination with a partial revert of commit > > 04231b3002ac53f8a64a7bd142fde3fa4b6808c6 fixes a regression between 2.6.23 > > and 2.6.24-rc8 where a PPC64 machine with all CPUS on a memoryles

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka J Enberg
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 c

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Olaf Hering
On Wed, Jan 23, Mel Gorman wrote: > This patch in combination with a partial revert of commit > 04231b3002ac53f8a64a7bd142fde3fa4b6808c6 fixes a regression between 2.6.23 > and 2.6.24-rc8 where a PPC64 machine with all CPUS on a memoryless node fails > to boot. If approved by the SLAB maintainers,

Re: [PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Pekka J Enberg
Hi Mel, On Wed, 23 Jan 2008, Mel Gorman wrote: > diff -rup -X /usr/src/patchset-0.6/bin//dontdiff > linux-2.6.24-rc8-005-revert-memoryless-slab/mm/slab.c > linux-2.6.24-rc8-010_handle_missing_l3/mm/slab.c > --- linux-2.6.24-rc8-005-revert-memoryless-slab/mm/slab.c 2008-01-22 > 17:46:32.

[PATCH] Fix boot problem in situations where the boot CPU is running on a memoryless node

2008-01-23 Thread Mel Gorman
This patch in combination with a partial revert of commit 04231b3002ac53f8a64a7bd142fde3fa4b6808c6 fixes a regression between 2.6.23 and 2.6.24-rc8 where a PPC64 machine with all CPUS on a memoryless node fails to boot. If approved by the SLAB maintainers, it should be merged for 2.6.24. With memo