Dont allocate pagesets for unpopulated zones. We do not need to allocate pagesets for unpopulated zones. This saves 1 mio pagesets per unpopulated zone on a 1k cpu / 1k node box. Signed-off-by: Christoph Lameter Index: linux-2.6.18-rc7-mm1/mm/page_alloc.c =================================================================== --- linux-2.6.18-rc7-mm1.orig/mm/page_alloc.c 2006-09-19 09:27:03.624466971 -0500 +++ linux-2.6.18-rc7-mm1/mm/page_alloc.c 2006-09-19 09:38:33.058767522 -0500 @@ -1908,6 +1908,9 @@ static int __cpuinit process_zones(int c if (!populated_zone(zone)) continue; + if (!populated_zone(zone)) + continue; + zone_pcp(zone, cpu) = kmalloc_node(sizeof(struct per_cpu_pageset), GFP_KERNEL, cpu_to_node(cpu)); if (!zone_pcp(zone, cpu))