Index: linux-2.6.16-rc1-mm4/mm/vmscan.c =================================================================== --- linux-2.6.16-rc1-mm4.orig/mm/vmscan.c 2006-01-30 11:43:19.000000000 -0800 +++ linux-2.6.16-rc1-mm4/mm/vmscan.c 2006-01-30 11:44:15.000000000 -0800 @@ -1836,6 +1836,7 @@ int zone_reclaim_mode __read_mostly; #define RECLAIM_WRITE (1<<1) /* Writeout pages during reclaim */ #define RECLAIM_SWAP (1<<2) /* Swap pages out during reclaim */ #define RECLAIM_SLAB (1<<3) /* Do a global slab shrink if the zone is out of memory */ +#define RECLAIM_DEBUG (1<<10) /* trace zone reclaim behavior */ /* * Mininum time between zone reclaim scans @@ -1904,6 +1905,10 @@ int zone_reclaim(struct zone *zone, gfp_ sc.priority--; shrink_zone(zone, &sc); + if (zone_reclaim_mode & RECLAIM_DEBUG) + printk(KERN_INFO "Zone reclaim priority=%d Scanned=%lu Reclaimed=%lu\n", + sc.priority, sc.nr_scanned, sc.nr_reclaimed); + } while (sc.nr_reclaimed < nr_pages && sc.priority > 0); if (sc.nr_reclaimed < nr_pages && (zone_reclaim_mode & RECLAIM_SLAB)) { Index: linux-2.6.16-rc1-mm4/Documentation/sysctl/vm.txt =================================================================== --- linux-2.6.16-rc1-mm4.orig/Documentation/sysctl/vm.txt 2006-01-30 11:43:19.000000000 -0800 +++ linux-2.6.16-rc1-mm4/Documentation/sysctl/vm.txt 2006-01-30 11:44:15.000000000 -0800 @@ -138,6 +138,7 @@ This is value ORed together of 2 = Zone reclaim writes dirty pages out 4 = Zone reclaim swaps pages 8 = Also do a global slab reclaim pass +1024 = Zone reclaim debug printks zone_reclaim_mode is set during bootup to 1 if it is determined that pages from remote zones will cause a measurable performance reduction. The Index: linux-2.6.16-rc1-mm4/arch/ia64/sn/pci/tioce_provider.c =================================================================== --- linux-2.6.16-rc1-mm4.orig/arch/ia64/sn/pci/tioce_provider.c 2006-01-30 11:27:34.000000000 -0800 +++ linux-2.6.16-rc1-mm4/arch/ia64/sn/pci/tioce_provider.c 2006-01-30 11:49:19.000000000 -0800 @@ -717,7 +717,7 @@ tioce_reserve_m32(struct tioce_kernel *c while (ate_index <= last_ate) { u64 ate; - ate = ATE_MAKE(0xdeadbeef, ps); + ate = ATE_MAKE(0xdeadbeef, ps, 0); ce_kern->ce_ate3240_shadow[ate_index] = ate; tioce_mmr_storei(ce_kern, &ce_mmr->ce_ure_ate3240[ate_index], ate);