Index: linux-2.6.16-rc1-mm1/mm/vmscan.c
===================================================================
--- linux-2.6.16-rc1-mm1.orig/mm/vmscan.c	2006-01-19 15:50:19.000000000 -0800
+++ linux-2.6.16-rc1-mm1/mm/vmscan.c	2006-01-19 17:26:50.000000000 -0800
@@ -491,7 +491,7 @@ static int shrink_list(struct list_head 
 				goto keep_locked;
 			if (!may_enter_fs)
 				goto keep_locked;
-			if (laptop_mode && !sc->may_writepage)
+			if ((laptop_mode && !sc->may_writepage) || !sc->may_swap)
 				goto keep_locked;
 
 			/* Page is dirty, try to write it out here */
@@ -1878,6 +1878,7 @@ int zone_reclaim(struct zone *zone, gfp_
 	if (sc.nr_reclaimed == 0)
 		zone->last_unsuccessful_zone_reclaim = jiffies;
 
+	printk(KERN_CRIT "zone_reclaim jiffies=%lu reclaimed=%ld\n", jiffies, sc.nr_reclaimed);
 	return sc.nr_reclaimed > nr_pages;
 }
 #endif
Index: linux-2.6.16-rc1-mm1/Makefile
===================================================================
--- linux-2.6.16-rc1-mm1.orig/Makefile	2006-01-18 13:41:59.000000000 -0800
+++ linux-2.6.16-rc1-mm1/Makefile	2006-01-19 15:50:21.000000000 -0800
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 6
 SUBLEVEL = 16
-EXTRAVERSION =-rc1-mm1
+EXTRAVERSION =-rc1-mm1-debug
 NAME=Sliding Snow Leopard
 
 # *DOCUMENTATION*
Index: linux-2.6.16-rc1-mm1/mm/mempolicy.c
===================================================================
--- linux-2.6.16-rc1-mm1.orig/mm/mempolicy.c	2006-01-18 13:41:50.000000000 -0800
+++ linux-2.6.16-rc1-mm1/mm/mempolicy.c	2006-01-19 15:50:21.000000000 -0800
@@ -540,10 +540,9 @@ static void migrate_page_add(struct page
 	/*
 	 * Avoid migrating a page that is shared with others.
 	 */
-	if ((flags & MPOL_MF_MOVE_ALL) || page_mapcount(page) ==1)
+	if ((flags & MPOL_MF_MOVE_ALL) || page_mapcount(page) == 1)
 		if (isolate_lru_page(page))
 			list_add(&page->lru, pagelist);
-	}
 }
 
 /*