From: Andrea Arcangeli Date: Wed, 25 May 2011 00:11:38 +0000 (-0700) Subject: mm/compaction: reverse the change that forbade sync migraton with __GFP_NO_KSWAPD X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=c6a140bf164829769499b5e50d380893da39b29e;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git mm/compaction: reverse the change that forbade sync migraton with __GFP_NO_KSWAPD It's uncertain this has been beneficial, so it's safer to undo it. All other compaction users would still go in synchronous mode if a first attempt at async compaction failed. Hopefully we don't need to force special behavior for THP (which is the only __GFP_NO_KSWAPD user so far and it's the easier to exercise and to be noticeable). This also make __GFP_NO_KSWAPD return to its original strict semantics specific to bypass kswapd, as THP allocations have khugepaged for the async THP allocations/compactions. Signed-off-by: Andrea Arcangeli Cc: Alex Villacis Lasso Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 77773329aa72..83eaa2eb72f8 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -2107,7 +2107,7 @@ rebalance: sync_migration); if (page) goto got_pg; - sync_migration = !(gfp_mask & __GFP_NO_KSWAPD); + sync_migration = true; /* Try direct reclaim and then allocating */ page = __alloc_pages_direct_reclaim(gfp_mask, order,