[PATCH 3.8 095/166] mm/compaction: respect ignore_skip_hint in update_pageblock_skip
Kamal Mostafa
kamal at canonical.com
Wed Jan 15 21:51:49 UTC 2014
3.8.13.16 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Joonsoo Kim <iamjoonsoo.kim at lge.com>
commit 6815bf3f233e0b10c99a758497d5d236063b010b upstream.
update_pageblock_skip() only fits to compaction which tries to isolate
by pageblock unit. If isolate_migratepages_range() is called by CMA, it
try to isolate regardless of pageblock unit and it don't reference
get_pageblock_skip() by ignore_skip_hint. We should also respect it on
update_pageblock_skip() to prevent from setting the wrong information.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim at lge.com>
Acked-by: Vlastimil Babka <vbabka at suse.cz>
Reviewed-by: Naoya Horiguchi <n-horiguchi at ah.jp.nec.com>
Reviewed-by: Wanpeng Li <liwanp at linux.vnet.ibm.com>
Cc: Christoph Lameter <cl at linux.com>
Cc: Rafael Aquini <aquini at redhat.com>
Cc: Vlastimil Babka <vbabka at suse.cz>
Cc: Wanpeng Li <liwanp at linux.vnet.ibm.com>
Cc: Mel Gorman <mgorman at suse.de>
Cc: Rik van Riel <riel at redhat.com>
Cc: Zhang Yanfei <zhangyanfei at cn.fujitsu.com>
Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
mm/compaction.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/mm/compaction.c b/mm/compaction.c
index c62bd06..2a17e96 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -133,6 +133,10 @@ static void update_pageblock_skip(struct compact_control *cc,
bool migrate_scanner)
{
struct zone *zone = cc->zone;
+
+ if (cc->ignore_skip_hint)
+ return;
+
if (!page)
return;
--
1.8.3.2
More information about the kernel-team
mailing list