diff options
author | Suren Baghdasaryan <surenb@google.com> | 2024-08-13 17:07:57 +0200 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2024-08-16 07:16:16 +0200 |
commit | 766c163c2068b45330664fb67df67268e588a22d (patch) | |
tree | dd06c2f510f7ddade3a7e4a6956df47c24fe37f1 /mm/mm_init.c | |
parent | alloc_tag: introduce clear_page_tag_ref() helper function (diff) | |
download | linux-766c163c2068b45330664fb67df67268e588a22d.tar.xz linux-766c163c2068b45330664fb67df67268e588a22d.zip |
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>
Diffstat (limited to '')
-rw-r--r-- | mm/mm_init.c | 2 |
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); |