On 2021-12-05 3:46 p.m., Helge Deller wrote:
On 12/5/21 20:33, John David Anglin wrote:
I'm seeing this on rp3440 fairly frequently. Must have something to do with memory as it
doesn't seem to happen on my c8000.
Freeing initrd memory: 20980K
_______________________________
< Your System ate a SPARC! Gah! >
-------------------------------
\ ^__^
(__)\ )\/\
U ||----w |
|| ||
swapper/0 (pid 1): Protection id trap (code 7)
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.14.21+ #1
Hardware name: 9000/800/rp3440
YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
PSW: 00001000000001101111111100001111 Not tainted
r00-03 000000ff0806ff0f 0000000040bf9180 0000000040ab40b8 000000004b618280
r04-07 0000000040b5c980 0000000000194000 0000000040f8c800 0000000040193000
r08-11 0000000040f90000 0000000000000800 0000000000200000 0000000000100000
r12-15 0000000000e00000 0000000000200000 0000000040b79180 0000000000000001
r16-19 0000000040bf9980 0000000040b79180 0000000000000001 0000000000000000
r20-23 0000000000000008 0000000000000323 0000000000193323 0000000000000323
r24-27 0000000000000001 0000000000000400 0000000040100000 0000000040b5c980
r28-31 0000000040f8fca0 000000004b618250 000000004b618390 0000000040f8e000
sr00-03 0000000000000000 0000000000000000 0000000000000000 0000000000000000
sr04-07 0000000000000000 0000000000000000 0000000000000000 0000000000000000
IASQ: 0000000000000000 0000000000000000 IAOQ: 000000004010765c 0000000040107660
IIR: 43ffff40 ISR: 0000000000000000 IOR: 0000000000000000
CPU: 0 CR30: 000000004b618000 CR31: ffffffffffffffff
ORIG_R28: 000000004b618570
IAOQ[0]: map_pages+0x2fc/0x378
IAOQ[1]: map_pages+0x300/0x378
RP(r2): free_initmem+0xf8/0x210
Backtrace:
[<0000000040ab40b8>] free_initmem+0xf8/0x210
[<0000000040ab3d28>] kernel_init+0xa0/0x338
[<0000000040202020>] ret_from_kernel_thread+0x20/0x28
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.14.21+ #1
Hardware name: 9000/800/rp3440
Backtrace:
[<000000004020a3a0>] show_stack+0x70/0x90
[<0000000040aadf98>] dump_stack_lvl+0xd8/0x128
[<0000000040aae01c>] dump_stack+0x34/0x48
[<000000004020a5e4>] die_if_kernel+0x204/0x430
[<000000004020afd8>] handle_interruption+0x550/0xc78
[<0000000040203080>] intr_check_sig+0x0/0x3c
10574: 43 ff ff 40 ldb 1fa0(sr3,r31),r31
This IIR is strange. We most likely don't touch userspace at this stage
when the kernel boots, and...
Yes. I think mapping for map_pages() must be corrupt. It's a bit strange that the code ran as
far as it did into map_pages().
4010765c: bd 1c 3e 7d cmpb,*<> ret0,r8,401075a0 <map_pages+0x240>
40107660: 34 e7 20 00 ldo 1000(r7),r7
it doesn't fit with this dump at IAOQ.
Yes.
Does it boot if you remove the __init in front of map_pages?
I'll try. I thought of trying it but wasn't sure if map_pages() had to be an init routine or not.
I should have said this fault occurs randomly. Sometimes kernel boots and runs okay.
Dave
--
John David Anglin dave.anglin@xxxxxxxx