The quilt patch titled Subject: mm-compaction-simplify-should_compact_retry-fix has been removed from the -mm tree. Its filename was mm-compaction-simplify-should_compact_retry-fix.patch This patch was dropped because it was folded into mm-compaction-simplify-should_compact_retry.patch ------------------------------------------------------ From: Johannes Weiner <hannes@xxxxxxxxxxx> Subject: mm-compaction-simplify-should_compact_retry-fix Date: Fri, 2 Jun 2023 10:47:05 -0400 Vlastimil points out an unintended change. Previously when hitting max_retries we'd bump the priority level and restart the loop. Now we bail out and fail instead. Restore the original behavior. Link: https://lkml.kernel.org/r/20230602144705.GB161817@xxxxxxxxxxx Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Vlastimil Babka <vbabka@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/page_alloc.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) --- a/mm/page_alloc.c~mm-compaction-simplify-should_compact_retry-fix +++ a/mm/page_alloc.c @@ -3506,6 +3506,15 @@ should_compact_retry(struct alloc_contex return false; /* + * Compaction was skipped due to a lack of free order-0 + * migration targets. Continue if reclaim can help. + */ + if (compact_result == COMPACT_SKIPPED) { + ret = compaction_zonelist_suitable(ac, order, alloc_flags); + goto out; + } + + /* * Compaction managed to coalesce some page blocks, but the * allocation failed presumably due to a race. Retry some. */ @@ -3522,17 +3531,10 @@ should_compact_retry(struct alloc_contex if (order > PAGE_ALLOC_COSTLY_ORDER) max_retries /= 4; - ret = ++(*compaction_retries) <= max_retries; - goto out; - } - - /* - * Compaction was skipped due to a lack of free order-0 - * migration targets. Continue if reclaim can help. - */ - if (compact_result == COMPACT_SKIPPED) { - ret = compaction_zonelist_suitable(ac, order, alloc_flags); - goto out; + if (++(*compaction_retries) <= max_retries) { + ret = true; + goto out; + } } /* _ Patches currently in -mm which might be from hannes@xxxxxxxxxxx are mm-compaction-remove-compaction-result-helpers.patch mm-compaction-simplify-should_compact_retry.patch mm-compaction-refactor-__compaction_suitable.patch mm-compaction-refactor-__compaction_suitable-fix.patch mm-compaction-remove-unnecessary-is_via_compact_memory-checks.patch mm-compaction-drop-redundant-watermark-check-in-compaction_zonelist_suitable.patch mm-compaction-have-compaction_suitable-return-bool.patch mm-compaction-avoid-gfp_nofs-abba-deadlock.patch mm-page_isolation-write-proper-kerneldoc.patch