Commit 766c163c authored by Suren Baghdasaryan's avatar Suren Baghdasaryan Committed by Andrew Morton
Browse files

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: d224eb02 ("codetag: debug: mark codetags for reserved pages as empty")
Signed-off-by: default avatarSuren Baghdasaryan <surenb@google.com>
Acked-by: default avatarDavid 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: default avatarAndrew Morton <akpm@linux-foundation.org>
parent a8fc28da
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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);