summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSuren Baghdasaryan <surenb@google.com>2024-08-13 18:07:57 +0300
committerAndrew Morton <akpm@linux-foundation.org>2024-08-16 08:16:16 +0300
commit766c163c2068b45330664fb67df67268e588a22d (patch)
treedd06c2f510f7ddade3a7e4a6956df47c24fe37f1
parenta8fc28dad6d574582cdf2f7e78c73c59c623df30 (diff)
downloadlinux-766c163c2068b45330664fb67df67268e588a22d.tar.xz
alloc_tag: mark pages reserved during CMA activation as not tagged
During CMA activation, pages in CMA area are prepared and then freed without being allocated. This triggers warnings when memory allocation debug config (CONFIG_MEM_ALLOC_PROFILING_DEBUG) is enabled. Fix this by marking these pages not tagged before freeing them. Link: https://lkml.kernel.org/r/20240813150758.855881-2-surenb@google.com Fixes: d224eb0287fb ("codetag: debug: mark codetags for reserved pages as empty") Signed-off-by: Suren Baghdasaryan <surenb@google.com> Acked-by: David Hildenbrand <david@redhat.com> Cc: Kees Cook <keescook@chromium.org> Cc: Kent Overstreet <kent.overstreet@linux.dev> Cc: Pasha Tatashin <pasha.tatashin@soleen.com> Cc: Sourav Panda <souravpanda@google.com> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: <stable@vger.kernel.org> [6.10] Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-rw-r--r--mm/mm_init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/mm_init.c b/mm/mm_init.c
index adc3127573cd..51960079875b 100644
--- a/mm/mm_init.c
+++ b/mm/mm_init.c
@@ -2244,6 +2244,8 @@ void __init init_cma_reserved_pageblock(struct page *page)
set_pageblock_migratetype(page, MIGRATE_CMA);
set_page_refcounted(page);
+ /* pages were reserved and not allocated */
+ clear_page_tag_ref(page);
__free_pages(page, pageblock_order);
adjust_managed_page_count(page, pageblock_nr_pages);