Marcelo,
Is this a typo in function free_area_init_core()? The information on realsize is more interesting than the size variable.
--- mm/page_alloc.c~ Sun Oct 27 00:46:10 2002
+++ mm/page_alloc.c Sun Oct 27 00:46:35 2002
@@ -735,7 +735,7 @@
if (zholes_size)
realsize -= zholes_size[j];
- printk("zone(%lu): %lu pages.\n", j, size);
+ printk("zone(%lu): %lu pages.\n", j, realsize);
zone->size = size;
zone->name = zone_names[j];
zone->lock = SPIN_LOCK_UNLOCKED;