diff options
Diffstat (limited to 'mm/compaction.c')
| -rw-r--r-- | mm/compaction.c | 11 | 
1 files changed, 7 insertions, 4 deletions
diff --git a/mm/compaction.c b/mm/compaction.c index b5326b141a25..f58bcd016f43 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; @@ -235,10 +239,9 @@ static bool suitable_migration_target(struct page *page)  }  /* - * Isolate free pages onto a private freelist. Caller must hold zone->lock. - * If @strict is true, will abort returning 0 on any invalid PFNs or non-free - * pages inside of the pageblock (even though it may still end up isolating - * some pages). + * Isolate free pages onto a private freelist. If @strict is true, will abort + * returning 0 on any invalid PFNs or non-free pages inside of the pageblock + * (even though it may still end up isolating some pages).   */  static unsigned long isolate_freepages_block(struct compact_control *cc,  				unsigned long blockpfn,  | 
