Index: linux-2.6/mm/page_alloc.c =================================================================== --- linux-2.6.orig/mm/page_alloc.c 2007-01-04 09:07:32.000000000 -0800 +++ linux-2.6/mm/page_alloc.c 2007-01-04 09:08:00.000000000 -0800 @@ -711,6 +711,9 @@ for_each_zone(zone) { struct per_cpu_pageset *pset; + if (!populated_zone(zone)) + continue; + pset = zone_pcp(zone, cpu); for (i = 0; i < ARRAY_SIZE(pset->pcp); i++) { struct per_cpu_pages *pcp;