Re: [PATCH v2 04/69] mm/hugetlb: Initialize gigantic bootmem hugepage struct pages earlier
From: Mike Rapoport <rppt@kernel.org>
Date: 2026-05-22 08:13:12
Also in:
linux-mm, lkml
From: Mike Rapoport <rppt@kernel.org>
Date: 2026-05-22 08:13:12
Also in:
linux-mm, lkml
On Wed, 13 May 2026 21:04:32 +0800, Muchun Song [off-list ref] wrote:
Gigantic bootmem HugeTLB pages are currently initialized from hugetlb_init(), but page_alloc_init_late() runs earlier and walks pageblocks to determine zone contiguity. If a bootmem HugeTLB region is marked noinit, set_zone_contiguous() can observe still-uninitialized struct pages through __pageblock_pfn_to_page(). This may not trigger an immediate failure, but it can make set_zone_contiguous() compute the wrong zone contiguity state. If extra poisoned-page checks are added in this path, such as PF_POISONED_CHECK() in page_zone_id(), it can also trigger an early boot panic. [...]
Acked-by: Mike Rapoport (Microsoft) <rppt@kernel.org> -- Sincerely yours, Mike.