Index: linux-2.6.17-rc6-mm2/mm/migrate.c =================================================================== --- linux-2.6.17-rc6-mm2.orig/mm/migrate.c 2006-06-16 11:48:52.847387024 -0700 +++ linux-2.6.17-rc6-mm2/mm/migrate.c 2006-06-21 12:49:26.868385641 -0700 @@ -778,10 +778,9 @@ static int do_move_pages(struct mm_struc page = follow_page(vma, pp->addr, FOLL_GET); err = -ENOENT; - if (!page) - goto set_status; - if (PageReserved(page)) /* Check for zero page */ + /* Zero page or not present ? */ + if (!page || PageReserved(page)) goto put_and_set; pp->page = page;