Message ID | 20210111194017.22696-1-rppt@kernel.org (mailing list archive) |
---|---|
Headers | show |
Series | mm: fix initialization of struct page for holes in memory layout | expand |
On Mon, 11 Jan 2021 21:40:15 +0200 Mike Rapoport <rppt@kernel.org> wrote: > Commit 73a6e474cb37 ("mm: memmap_init: iterate over > memblock regions rather that check each PFN") exposed several issues with > the memory map initialization and these patches fix those issues. > > Initially there were crashes during compaction that Qian Cai reported back > in April [1]. It seemed back then that the problem was fixed, but a few > weeks ago Andrea Arcangeli hit the same bug [2] and there was an additional > discussion at [3]. The earlier version of these fixes had cc:stable. Was the omission this time deliberate?
On Mon, Jan 11, 2021 at 04:58:01PM -0800, Andrew Morton wrote: > On Mon, 11 Jan 2021 21:40:15 +0200 Mike Rapoport <rppt@kernel.org> wrote: > > > Commit 73a6e474cb37 ("mm: memmap_init: iterate over > > memblock regions rather that check each PFN") exposed several issues with > > the memory map initialization and these patches fix those issues. > > > > Initially there were crashes during compaction that Qian Cai reported back > > in April [1]. It seemed back then that the problem was fixed, but a few > > weeks ago Andrea Arcangeli hit the same bug [2] and there was an additional > > discussion at [3]. > > The earlier version of these fixes had cc:stable. Was the omission > this time deliberate? Nope, it was accidental. Thanks for noticing.
From: Mike Rapoport <rppt@linux.ibm.com> Hi, Commit 73a6e474cb37 ("mm: memmap_init: iterate over memblock regions rather that check each PFN") exposed several issues with the memory map initialization and these patches fix those issues. Initially there were crashes during compaction that Qian Cai reported back in April [1]. It seemed back then that the problem was fixed, but a few weeks ago Andrea Arcangeli hit the same bug [2] and there was an additional discussion at [3]. v3: * use architectural zone constraints to set zone links for struct pages corresponding to the holes * drop implicit update of memblock.memory * add a patch that sets pfn 0 to E820_TYPE_RAM on x86 v2: https://lore.kernel.org/lkml/20201209214304.6812-1-rppt@kernel.org/): * added patch that adds all regions in memblock.reserved that do not overlap with memblock.memory to memblock.memory in the beginning of free_area_init() [1] https://lore.kernel.org/lkml/8C537EB7-85EE-4DCF-943E-3CC0ED0DF56D@lca.pw [2] https://lore.kernel.org/lkml/20201121194506.13464-1-aarcange@redhat.com [3] https://lore.kernel.org/mm-commits/20201206005401.qKuAVgOXr%akpm@linux-foundation.org Mike Rapoport (2): x86/setup: don't remove E820_TYPE_RAM for pfn 0 mm: fix initialization of struct page for holes in memory layout arch/x86/kernel/setup.c | 20 +++++----- mm/page_alloc.c | 84 ++++++++++++++++++++++++----------------- 2 files changed, 59 insertions(+), 45 deletions(-)