]> git.baikalelectronics.ru Git - kernel.git/commit
mm/vmscan: do not check compaction_ready on promoted zones
authorWeijie Yang <weijie.yang@samsung.com>
Mon, 7 Apr 2014 22:37:00 +0000 (15:37 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 7 Apr 2014 23:35:50 +0000 (16:35 -0700)
commit8d394af46a728b8bc828064687c7f3de69423883
treebafb3ff4118bb08c96f2a584c6cdee59aa873a4d
parent6a1f394964fe5c750fd6fcfb994af93bcbd19cdb
mm/vmscan: do not check compaction_ready on promoted zones

We abort direct reclaim if we find the zone is ready for compaction.
Sometimes the zone is just a promoted highmem zone to force a scan of
highmem, which is not the intended zone the caller want to allocate a
page from.  In this situation, setting aborted_reclaim to indicate the
caller turned back to retry the allocation is waste of time and could
cause a loop in __alloc_pages_slowpath().

This patch does not check compaction_ready() on promoted zones to avoid
the above situation.  Only set aborted_reclaim if the caller intended
zone is ready for compaction.

Signed-off-by: Weijie Yang <weijie.yang@samsung.com>
Acked-by: Rik van Riel <riel@redhat.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/vmscan.c