Re: BUG: Bad page map in process init pte:c0ab684c pmd:01182000 (on a PowerMac G4 DP)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Le 17/12/2022 à 22:39, Erhard F. a écrit :
> On Mon, 12 Dec 2022 14:31:35 +1000
> "Nicholas Piggin" <npiggin@xxxxxxxxx> wrote:
> 
>> Have you run memtest on the system? Are the messages related to a
>> kernel upgrade? This and your KASAN bugs look possibly like random
>> corruption.
> 
> Ok, so I went back to kernel 5.4.225 and ran 'memtester 1930M' for a few hours completing 5 test loops in a row. Next I ran 'stress -m2 --vm-bytes 965M' for a few hours, also without any problems. 1930M is the max. memory I can lock on this 2 GB PowerMac G4 without invoking systemds' OOM killer.
> 
> Booting kernel 6.1.0 and running 'stress -m2 --vm-bytes 965M' I almost instantly get:


That 'stress' tool doesn't seem to be part of memtester. Where can I 
find it ?

Did you try on other targets that G4 ?

Did you try with a non SMP kernel ?


> [...]
> pagealloc: memory corruption
> 830c4e52: 00 00 00 00                                      ....
> CPU: 1 PID: 298 Comm: stress Tainted: G                T  6.1.0-gentoo-PMacG4 #2
> Hardware name: PowerMac3,6 7455 0x80010303 PowerMac
> Call Trace:
> [f302bb50] [c0d22770] dump_stack_lvl+0x60/0xa4 (unreliable)
> [f302bb70] [c03242bc] __kernel_unpoison_pages+0x21c/0x268
> [f302bbb0] [c02fdd04] get_page_from_freelist+0xf90/0x1234
> [f302bcb0] [c02febd0] __alloc_pages+0x1dc/0x101c
> [f302be00] [c02d2fa8] handle_mm_fault+0x5b8/0x10bc
> [f302bed0] [c002b8c8] ___do_page_fault+0x22c/0x818
> [f302bf10] [c002c108] do_page_fault+0x28/0x6c
> [f302bf30] [c000433c] DataAccess_virt+0x124/0x17c
> --- interrupt: 300 at 0xac3044
> NIP:  00ac3044 LR: 00ac3020 CTR: 00000000
> REGS: f302bf40 TRAP: 0300   Tainted: G                T   (6.1.0-gentoo-PMacG4)
> MSR:  0000d032 <EE,PR,ME,IR,DR,RI>  CR: 20882464  XER: 00000000
> DAR: 8b192010 DSISR: 42000000
> GPR00: 00ac3020 affad290 a7ed3740 6b97e010 3c500000 20224462 00000000 009e0264
> GPR08: 1f815000 1f814000 00000000 404a0fca 20882462 00adfff4 00000000 00000000
> GPR16: 00000000 00000002 00000000 0000005a 40802462 80002462 40002462 00ae00a0
> GPR24: ffffffff ffffffff 3c500000 00000000 00000000 6b97e010 00ae7d64 00001000
> NIP [00ac3044] 0xac3044
> LR [00ac3020] 0xac3020
> --- interrupt: 300
> page:a7a2bb6d refcount:1 mapcount:0 mapping:00000000 index:0x1 pfn:0x310ab
> flags: 0x80000000(zone=2)
> raw: 80000000 00000100 00000122 00000000 00000001 00000000 ffffffff 00000001
> raw: 00000000
> page dumped because: pagealloc: corrupted page details
> 
> Running 'memtester 1930M' on kernel 6.1.0 I almost instantly get:
> [...]
> pagealloc: memory corruption
> f4f9be93: 00 00 00 00                                      ....
> CPU: 1 PID: 295 Comm: memtester Tainted: G                T  6.1.0-gentoo-PMacG4 #2
> Hardware name: PowerMac3,6 7455 0x80010303 PowerMac
> Call Trace:
> [f2c7b6c0] [c0d22770] dump_stack_lvl+0x60/0xa4 (unreliable)
> [f2c7b6e0] [c03242bc] __kernel_unpoison_pages+0x21c/0x268
> [f2c7b720] [c02fdd04] get_page_from_freelist+0xf90/0x1234
> [f2c7b820] [c02febd0] __alloc_pages+0x1dc/0x101c
> [f2c7b970] [c02d2fa8] handle_mm_fault+0x5b8/0x10bc
> [f2c7ba40] [c02c61a4] __get_user_pages+0x180/0x3cc
> [f2c7baa0] [c02c7e24] populate_vma_page_range+0x8c/0xe4
> [f2c7bad0] [c02c8088] __mm_populate+0x13c/0x238
> [f2c7bb60] [c02d5658] do_mlock+0x15c/0x38c
> [f2c7bc00] [c0019948] system_call_exception+0x120/0x204
> [f2c7bf30] [c00221ac] ret_from_syscall+0x0/0x2c
> --- interrupt: c00 at 0x6e6af0
> NIP:  006e6af0 LR: 007e11a4 CTR: 00000000
> REGS: f2c7bf40 TRAP: 0c00   Tainted: G                T   (6.1.0-gentoo-PMacG4)
> MSR:  0000d032 <EE,PR,ME,IR,DR,RI>  CR: 40002468  XER: 20000000
> 
> GPR00: 00000096 afa7bdc0 a7abb2c0 2f067000 789ff010 00000000 00000000 006d23d4
> GPR08: 0000d032 00000008 78a00ff8 4047df2a 4047dbf7 007ffff4 010ef900 00c72438
> GPR16: 00c73b50 00c723a0 789ff010 78a00000 00000000 a7ab42c8 00000000 007d0ea0
> GPR24: 78a00000 fffff000 00000000 00001000 2f066010 00000001 00807de8 007e3870
> NIP [006e6af0] 0x6e6af0
> LR [007e11a4] 0x7e11a4
> --- interrupt: c00
> page:a05bd3e5 refcount:1 mapcount:0 mapping:00000000 index:0x1 pfn:0x310ab
> flags: 0x80000000(zone=2)
> raw: 80000000 00000100 00000122 00000000 00000001 00000000 ffffffff 00000001
> raw: 00000000
> page dumped because: pagealloc: corrupted page details
> 
> 
> So the hardware looks ok but there is definitely something fishy going on in the memory subsystem of newer kernel releases. At least on ppc32. Also does not matter whether KFENCE or KASAN are used, running memtester or stress always leads to this page corruption.
> 
> Full dmesg of the 2 pagealloc corruptions + kernel config attached.
> 
> Regards,
> Erhard




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux