mm/mempolicy: correct putback method for isolate pages if failed
authorJoonsoo Kim <[email protected]>
Thu, 19 Dec 2013 01:08:51 +0000 (17:08 -0800)
committerLinus Torvalds <[email protected]>
Thu, 19 Dec 2013 03:04:52 +0000 (19:04 -0800)
queue_pages_range() isolates hugetlbfs pages and putback_lru_pages()
can't handle these.  We should change it to putback_movable_pages().

Naoya said that it is worth going into stable, because it can break
in-use hugepage list.

Signed-off-by: Joonsoo Kim <[email protected]>
Acked-by: Rafael Aquini <[email protected]>
Reviewed-by: Naoya Horiguchi <[email protected]>
Reviewed-by: Wanpeng Li <[email protected]>
Cc: Christoph Lameter <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Cc: Wanpeng Li <[email protected]>
Cc: Mel Gorman <[email protected]>
Cc: Rik van Riel <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Cc: Zhang Yanfei <[email protected]>
Cc: <[email protected]> [3.12.x]
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
mm/mempolicy.c

index eca4a3129129751208b41cfe808e9e31e5dc7b5f..6d04d372be2957a7bf263e5ac98232c6b5a5e55b 100644 (file)
@@ -1318,7 +1318,7 @@ static long do_mbind(unsigned long start, unsigned long len,
                if (nr_failed && (flags & MPOL_MF_STRICT))
                        err = -EIO;
        } else
-               putback_lru_pages(&pagelist);
+               putback_movable_pages(&pagelist);
 
        up_write(&mm->mmap_sem);
  mpol_out: