[merged mm-stable] mm-page_alloc-drop-alloc_flags-arg-from-alloc_flags_cma.patch removed from -mm tree
Andrew Morton <[email protected]> Thu, 30 Jul 2026 19:43:33 -0700
| Newsgroups | org.kernel.vger.mm-commits |
|---|---|
| Message-ID | <[email protected]> |
The quilt patch titled
Subject: mm/page_alloc: drop alloc_flags arg from alloc_flags_cma()
has been removed from the -mm tree. Its filename was
mm-page_alloc-drop-alloc_flags-arg-from-alloc_flags_cma.patch
This patch was dropped because it was merged into the mm-stable branch
of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
------------------------------------------------------
From: Brendan Jackman <[email protected]>
Subject: mm/page_alloc: drop alloc_flags arg from alloc_flags_cma()
Date: Fri, 03 Jul 2026 12:31:57 +0000
To align the style with other alloc_flags_*() functions, drop this
additive argument and just have the callers do that themselves.
Note you can't always freely or alloc_flags like these callers do (because
of the WMARK bits that encode an enum) but this is fine for ALLOC_CMA,
just like it's fine for e.g. ALLOC_NON_BLOCK returned by
alloc_flags_nonblocking() and or'd by its caller.
Link: https://lore.kernel.org/[email protected]
Signed-off-by: Brendan Jackman <[email protected]>
Suggested-by: Vlastimil Babka (SUSE) <[email protected]>
Link: https://lore.kernel.org/all/[email protected]/
Reviewed-by: Vlastimil Babka (SUSE) <[email protected]>
Reviewed-by: Zi Yan <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
---
mm/page_alloc.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
--- a/mm/page_alloc.c~mm-page_alloc-drop-alloc_flags-arg-from-alloc_flags_cma
+++ a/mm/page_alloc.c
@@ -3775,14 +3775,13 @@ alloc_flags_nofragment(struct zone *zone
}
/* Must be called after current_gfp_context() which can change gfp_mask */
-static inline unsigned int alloc_flags_cma(gfp_t gfp_mask,
- unsigned int alloc_flags)
+static inline unsigned int alloc_flags_cma(gfp_t gfp_mask)
{
#ifdef CONFIG_CMA
if (gfp_migratetype(gfp_mask) == MIGRATE_MOVABLE)
- alloc_flags |= ALLOC_CMA;
+ return ALLOC_CMA;
#endif
- return alloc_flags;
+ return ALLOC_DEFAULT;
}
/*
@@ -4526,7 +4525,7 @@ alloc_flags_slowpath(gfp_t gfp_mask, uns
} else if (unlikely(rt_or_dl_task(current)) && in_task())
alloc_flags |= ALLOC_MIN_RESERVE;
- alloc_flags = alloc_flags_cma(gfp_mask, alloc_flags);
+ alloc_flags |= alloc_flags_cma(gfp_mask);
if (defrag_mode)
alloc_flags |= ALLOC_NOFRAGMENT;
@@ -4837,7 +4836,7 @@ retry:
reserve_flags = __gfp_pfmemalloc_flags(gfp_mask);
if (reserve_flags)
- alloc_flags = alloc_flags_cma(gfp_mask, reserve_flags) |
+ alloc_flags = alloc_flags_cma(gfp_mask) | reserve_flags |
ac->alloc_flags | (alloc_flags & ALLOC_KSWAPD);
/*
@@ -5070,7 +5069,7 @@ static inline bool prepare_alloc_pages(g
should_fail_alloc_page(gfp_mask, order))
return false;
- *alloc_flags = alloc_flags_cma(gfp_mask, *alloc_flags);
+ *alloc_flags |= alloc_flags_cma(gfp_mask);
/* Dirty zone balancing only done in the fast path */
ac->spread_dirty_pages = (gfp_mask & __GFP_WRITE);
_
Patches currently in -mm which might be from [email protected] are
mm-secretmem-dont-allow-highmem-folios.patch
mm-page_alloc-dont-spin_trylock-in-nmi-on-up.patch
mm-page_alloc-dont-spin_trylock-when-disallowed-in-free_one_page.patch
mm-page_alloc-rename-fpi_trylock-fpi_nolock.patch
cgroup-cpuset-update-some-comments-about-the-page-allocator.patch
mm-page_alloc-fixup-alloc_pages_nolock_noprof-comment.patch
mm-page_alloc-remove-a-couple-of-vm_bug_onst.patch