From 5e22080f1f6baaee2514366a225eae66e705d347 Mon Sep 17 00:00:00 2001 From: Gleb Natapov Date: Tue, 26 Oct 2010 14:22:07 -0700 Subject: [PATCH] --- yaml --- r: 217492 b: refs/heads/master c: 70384dc6dcc6aa76762200262820bdb8b724ecd5 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/mm/migrate.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 0e1be3792113..7b57ba5390b3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 66d7dd518ae413a383ab2c6c263cc30617329842 +refs/heads/master: 70384dc6dcc6aa76762200262820bdb8b724ecd5 diff --git a/trunk/mm/migrate.c b/trunk/mm/migrate.c index 35e454189966..fe5a3c6a5426 100644 --- a/trunk/mm/migrate.c +++ b/trunk/mm/migrate.c @@ -1037,7 +1037,7 @@ static int do_move_page_to_node_array(struct mm_struct *mm, err = -EFAULT; vma = find_vma(mm, pp->addr); - if (!vma || !vma_migratable(vma)) + if (!vma || pp->addr < vma->vm_start || !vma_migratable(vma)) goto set_status; page = follow_page(vma, pp->addr, FOLL_GET); @@ -1204,7 +1204,7 @@ static void do_pages_stat_array(struct mm_struct *mm, unsigned long nr_pages, int err = -EFAULT; vma = find_vma(mm, addr); - if (!vma) + if (!vma || addr < vma->vm_start) goto set_status; page = follow_page(vma, addr, 0);