[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240812184455.86580-1-surenb@google.com>
Date: Mon, 12 Aug 2024 11:44:55 -0700
From: Suren Baghdasaryan <surenb@...gle.com>
To: akpm@...ux-foundation.org
Cc: kent.overstreet@...ux.dev, hch@...radead.org, vbabka@...e.cz,
pasha.tatashin@...een.com, souravpanda@...gle.com, keescook@...omium.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org, surenb@...gle.com
Subject: [PATCH 1/1] 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.
Signed-off-by: Suren Baghdasaryan <surenb@...gle.com>
---
mm/mm_init.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/mm/mm_init.c b/mm/mm_init.c
index 75c3bd42799b..ec9324653ad9 100644
--- a/mm/mm_init.c
+++ b/mm/mm_init.c
@@ -2245,6 +2245,16 @@ 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 */
+ if (mem_alloc_profiling_enabled()) {
+ union codetag_ref *ref = get_page_tag_ref(page);
+
+ if (ref) {
+ set_codetag_empty(ref);
+ put_page_tag_ref(ref);
+ }
+ }
__free_pages(page, pageblock_order);
adjust_managed_page_count(page, pageblock_nr_pages);
base-commit: d74da846046aeec9333e802f5918bd3261fb5509
--
2.46.0.76.ge559c4bf1a-goog
Powered by blists - more mailing lists