[PATCH 3.11 077/208] mm/compaction: respect ignore_skip_hint in update_pageblock_skip

2014-01-13 Thread Luis Henriques
3.11.10.3 -stable review patch.  If anyone has any objections, please let me 
know.

--

From: Joonsoo Kim 

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 
Acked-by: Vlastimil Babka 
Reviewed-by: Naoya Horiguchi 
Reviewed-by: Wanpeng Li 
Cc: Christoph Lameter 
Cc: Rafael Aquini 
Cc: Vlastimil Babka 
Cc: Wanpeng Li 
Cc: Mel Gorman 
Cc: Rik van Riel 
Cc: Zhang Yanfei 
Signed-off-by: Andrew Morton 
Signed-off-by: Linus Torvalds 
Signed-off-by: Luis Henriques 
---
 mm/compaction.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/mm/compaction.c b/mm/compaction.c
index 05ccb4c..9a3e351 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -134,6 +134,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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 3.11 077/208] mm/compaction: respect ignore_skip_hint in update_pageblock_skip

2014-01-13 Thread Luis Henriques
3.11.10.3 -stable review patch.  If anyone has any objections, please let me 
know.

--

From: Joonsoo Kim iamjoonsoo@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@lge.com
Acked-by: Vlastimil Babka vba...@suse.cz
Reviewed-by: Naoya Horiguchi n-horigu...@ah.jp.nec.com
Reviewed-by: Wanpeng Li liw...@linux.vnet.ibm.com
Cc: Christoph Lameter c...@linux.com
Cc: Rafael Aquini aqu...@redhat.com
Cc: Vlastimil Babka vba...@suse.cz
Cc: Wanpeng Li liw...@linux.vnet.ibm.com
Cc: Mel Gorman mgor...@suse.de
Cc: Rik van Riel r...@redhat.com
Cc: Zhang Yanfei zhangyan...@cn.fujitsu.com
Signed-off-by: Andrew Morton a...@linux-foundation.org
Signed-off-by: Linus Torvalds torva...@linux-foundation.org
Signed-off-by: Luis Henriques luis.henriq...@canonical.com
---
 mm/compaction.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/mm/compaction.c b/mm/compaction.c
index 05ccb4c..9a3e351 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -134,6 +134,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

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/