mm: use migrate_prep() instead of migrate_prep_local()
authorMarek Szyprowski <m.szyprowski@samsung.com>
Wed, 12 Dec 2012 21:51:19 +0000 (13:51 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 13 Dec 2012 01:38:32 +0000 (17:38 -0800)
commitbe49a6e13537f32f85bd8c4ba04317ca36ca60ff
tree00f629b7be8203ce1fef100ab8875e291033dc5d
parentc8bf2d8ba4fbc093de7c0d192fe5d2531f14b8b9
mm: use migrate_prep() instead of migrate_prep_local()

__alloc_contig_migrate_range() should use all possible ways to get all the
pages migrated from the given memory range, so pruning per-cpu lru lists
for all CPUs is required, regadless the cost of such operation.  Otherwise
some pages which got stuck at per-cpu lru list might get missed by
migration procedure causing the contiguous allocation to fail.

Reported-by: SeongHwan Yoon <sunghwan.yun@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/page_alloc.c