[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220330154208.71aca532@gandalf.local.home>
Date: Wed, 30 Mar 2022 15:42:08 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: LKML <linux-kernel@...r.kernel.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Zi Yan <ziy@...dia.com>,
Mel Gorman <mgorman@...hsingularity.net>,
David Hildenbrand <david@...hat.com>,
Vlastimil Babka <vbabka@...e.cz>,
Mike Rapoport <rppt@...ux.ibm.com>,
Oscar Salvador <osalvador@...e.de>,
Andrew Morton <akpm@...ux-foundation.org>, linux-mm@...ck.org
Subject: [BUG] Crash on x86_32 for: mm: page_alloc: avoid merging
non-fallbackable pageblocks with others
I started testing new patches and it crashed when doing the x86-32 test on
boot up.
Initializing HighMem for node 0 (000375fe:0021ee00)
BUG: kernel NULL pointer dereference, address: 00000878
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
*pdpt = 0000000000000000 *pde = f0000000f000eef3
Oops: 0000 [#1] PREEMPT SMP PTI
CPU: 0 PID: 0 Comm: swapper Not tainted 5.17.0-test+ #469
Hardware name: MSI MS-7823/CSM-H87M-G43 (MS-7823), BIOS V1.6 02/22/2014
EIP: get_pfnblock_flags_mask+0x2c/0x36
Code: 6d ea ff 55 89 e5 56 89 ce 53 8b 18 89 d8 c1 eb 1e e8 f7 fb ff ff 69 db c0 02 00 00 89 c1 89 c2 c1 ea 05 8b 83 7c d7 79 c1 5b <8b> 04 90 d3 e8 21 f0 5e 5d c3 55 89 e5 57 56 89 d6 53 89 c3 64 a1
EAX: 00000000 EBX: f75f6000 ECX: 000043dc EDX: 0000021e
ESI: 00000007 EDI: 00000000 EBP: c15d9e34 ESP: c15d9e30
DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00210007
CR0: 80050033 CR2: 00000878 CR3: 01a48000 CR4: 000406b0
Call Trace:
__free_one_page+0x168/0x22a
free_pcppages_bulk+0xf0/0x1b9
free_unref_page_commit+0xe4/0xed
free_unref_page+0x77/0x9b
free_the_page+0x16/0x18
__free_pages+0x22/0x51
add_highpages_with_active_regions+0xbb/0xea
set_highmem_pages_init+0x69/0x7a
mem_init+0x2d/0x141
start_kernel+0x353/0x5f4
? set_intr_gate+0x47/0x5a
? early_idt_handler_common+0x44/0x44
i386_start_kernel+0x48/0x4a
startup_32_smp+0x161/0x164
Modules linked in:
CR2: 0000000000000878
---[ end trace 0000000000000000 ]---
I bisected it down to:
1dd214b8f21ca46d5431be9b2db8513c59e07a26
mm: page_alloc: avoid merging non-fallbackable pageblocks with others
To confirm, I went back to Linus's master branch (from last night), to
verify that it crashes. Then reverted this commit, recompiled and it booted
up fine without it.
Attached is the config that crashed.
-- Steve
Download attachment "config-bad" of type "application/octet-stream" (163078 bytes)
Powered by blists - more mailing lists