On Mon, Dec 07, 2020 at 09:58:37AM +0100, David Hildenbrand wrote:
On 06.12.20 01:54, akpm@linux-foundation.org wrote:
The patch titled Subject: mm: initialize struct pages in reserved regions outside of the zone ranges has been added to the -mm tree. Its filename is mm-initialize-struct-pages-in-reserved-regions-outside-of-the-zone-ranges.patch
This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-initialize-struct-pages-in-rese... and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-initialize-struct-pages-in-rese...
Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated there every 3-4 working days
From: Andrea Arcangeli aarcange@redhat.com Subject: mm: initialize struct pages in reserved regions outside of the zone ranges
Without this change, the pfn 0 isn't in any zone spanned range, and it's also not in any memory.memblock range, so the struct page of pfn 0 wasn't initialized and the PagePoison remained set when reserve_bootmem_region called __SetPageReserved, inducing a silent boot failure with DEBUG_VM (and correctly so, because the crash signaled the nodeid/nid of pfn 0 would be again wrong).
There's no enforcement that all memblock.reserved ranges must overlap memblock.memory ranges, so the memblock.reserved ranges also require an explicit initialization and the zones ranges need to be extended to include all memblock.reserved ranges with struct pages too or they'll be left uninitialized with PagePoison as it happened to pfn 0.
Link: https://lkml.kernel.org/r/20201205013238.21663-2-aarcange@redhat.com Fixes: 73a6e474cb37 ("mm: memmap_init: iterate over memblock regions rather that check each PFN") Signed-off-by: Andrea Arcangeli aarcange@redhat.com Cc: Mike Rapoport rppt@linux.ibm.com Cc: Baoquan He bhe@redhat.com Cc: David Hildenbrand david@redhat.com Cc: Mel Gorman mgorman@suse.de Cc: Michal Hocko mhocko@kernel.org Cc: Qian Cai cai@lca.pw Cc: Vlastimil Babka vbabka@suse.cz Cc: stable@vger.kernel.org Signed-off-by: Andrew Morton akpm@linux-foundation.org
[...]
I've lost track which patches are we considering right now to solve the overall issue. I'd appreciate a proper patch series with all relevant patches.
I think none of the patches is 100% right. I'll try to send a new version today.
-- Thanks,
David / dhildenb