From: Andrew Morton Instantaneous, 100%-of-the-time oops. Thanks for that. Cc: Christoph Hellwig Signed-off-by: Andrew Morton --- mm/slab.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff -puN mm/slab.c~slab-cleanup-kmem_getpages-fix mm/slab.c --- devel/mm/slab.c~slab-cleanup-kmem_getpages-fix 2006-04-15 01:00:53.000000000 -0700 +++ devel-akpm/mm/slab.c 2006-04-15 01:01:49.000000000 -0700 @@ -1492,6 +1492,7 @@ static void *kmem_getpages(struct kmem_c { struct page *page; int nr_pages; + int i; #ifndef CONFIG_MMU /* @@ -1510,10 +1511,8 @@ static void *kmem_getpages(struct kmem_c if (cachep->flags & SLAB_RECLAIM_ACCOUNT) atomic_add(nr_pages, &slab_reclaim_pages); add_page_state(nr_slab, nr_pages); - while (nr_pages--) { - __SetPageSlab(page); - page++; - } + for (i = 0; i < nr_pages; i++) + __SetPageSlab(page + i); return page_address(page); } _