Index: current/mm/page_alloc.c =================================================================== --- current.orig/mm/page_alloc.c 2007-02-07 00:30:53.000000000 -0800 +++ current/mm/page_alloc.c 2007-02-07 00:31:31.000000000 -0800 @@ -214,7 +214,7 @@ static void bad_page(struct page *page) 1 << PG_locked | 1 << PG_active | 1 << PG_dirty | - 1 << PG_reclaim | + 1 << PG_mlocked | 1 << PG_slab | 1 << PG_swapcache | 1 << PG_writeback | @@ -448,7 +448,7 @@ static inline int free_pages_check(struc 1 << PG_private | 1 << PG_locked | 1 << PG_active | - 1 << PG_reclaim | + 1 << PG_mlocked | 1 << PG_slab | 1 << PG_swapcache | 1 << PG_writeback | @@ -598,7 +598,7 @@ static int prep_new_page(struct page *pa 1 << PG_locked | 1 << PG_active | 1 << PG_dirty | - 1 << PG_reclaim | + 1 << PG_mlocked | 1 << PG_slab | 1 << PG_swapcache | 1 << PG_writeback | Index: current/mm/page_io.c =================================================================== --- current.orig/mm/page_io.c 2007-02-07 00:32:22.000000000 -0800 +++ current/mm/page_io.c 2007-02-07 00:32:31.000000000 -0800 @@ -59,8 +59,6 @@ static int end_swap_bio_write(struct bio * Re-dirty the page in order to avoid it being reclaimed. * Also print a dire warning that things will go BAD (tm) * very quickly. - * - * Also clear PG_reclaim to avoid rotate_reclaimable_page() */ set_page_dirty(page); printk(KERN_ALERT "Write-error on swap-device (%u:%u:%Lu)\n",