head -r347003 on 2-socket/2-cores-each G5 PowerMac11,2's: one type of boot-blocking context found
Mark Millard
marklmi at yahoo.com
Wed May 8 02:57:52 UTC 2019
This note just reports various examples of
handle_kernel_slb_spill instances. There
are many instances that are sometimes in
common across the examples.
Note that there are no examples of srr0
being reported from the DMAP space, they
all have srr0<DMAP_START . This is true
for both type 0x480 (EXC_ISE) and 0x380
(EXC_DSE).
For dar: some dar<DMAP_START but most
examples have DMAP_START<=dar .
Failed boot example . . .
Sometime after the moea64_bootstrap_slb_prefault
loop finished: i.e., for bs_remap_earlyboot
related activity.
type 0x480 srr0 0xab6948 dar 0x1e29000
0000000000ab6944 <.bs_gen_map+0x110> lwz r0,0(r6)
0000000000ab6948 <.bs_remap_earlyboot> mflr r0
0000000000ab694c <.bs_remap_earlyboot+0x4> std r22,-80(r1)
type 0x380 srr0 0xa87f14 dar 0xc000000003d99708
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
type 0x380 srr0 0xa8fbe4 dar 0xc000000018c99020
0000000000a8fbe0 <.moea64_pte_unset_native+0x6c> ld r2,40(r1)
0000000000a8fbe4 <.moea64_pte_unset_native+0x70> ldx r9,r29,r27
Sometime during dpcpu_init:
type 0x380 srr0 0xa87be8 dar 0xe000000000022ef8
0000000000a87be4 <.memcpy+0x140> ldu r0,-8(r9)
0000000000a87be8 <.memcpy+0x144> stdu r0,-8(r11)
0000000000a87bec <.memcpy+0x148> bdnz 0000000000a87be4 <.memcpy+0x140>
Sometime after numa_mem_regions returned:
(so after moea64_bootstrap_native)
type 0x380 srr0 0xa842c8 dar 0x9003e000
0000000000a842c4 <.ofwfb_bitblt_bitmap+0x20c> add r9,r6,r9
0000000000a842c8 <.ofwfb_bitblt_bitmap+0x210> stwx r11,r9,r8
Sometime after msgbufinit returned:
type 0x480 srr0 0xff846d78 dar 0x9003e000
(srr0: Probably an openfirmware code address?)
type 0x380 srr0 0xa5d598 dar 0xc00000036ebd4020
0000000000a5d594 <.vm_page_startup+0x6ac> li r11,0
0000000000a5d598 <.vm_page_startup+0x6b0> std r11,32(r29)
Sometime after platform_smp_probe_threads
returned:
type 0x380 srr0 0x6d7520 dar 0xe000000064d22000
00000000006d751c <.callout_cpu_init+0x94> li r0,0
00000000006d7520 <.callout_cpu_init+0x98> stdx r0,r11,r9
Failed boot example . . .
Like above but one did *not* happen:
type 0x380 srr0 0xa8fbe4 dar 0xc000000018c99020
Successful boot example . . .
Sometime after the moea64_bootstrap_slb_prefault
loop finished: i.e., for bs_remap_earlyboot
related activity.
type 0x380 srr0 0xa87f14 dar 0xc000000003d99708
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
type 0x380 srr0 0xa8fbe4 dar 0xc000000018c99040
0000000000a8fbe0 <.moea64_pte_unset_native+0x6c> ld r2,40(r1)
0000000000a8fbe4 <.moea64_pte_unset_native+0x70> ldx r9,r29,r27
type 0x380 srr0 0xa8fc54 dar 0xc000000003587600
0000000000a8fc50 <.moea64_pte_unset_native+0xdc> ptesync
0000000000a8fc54 <.moea64_pte_unset_native+0xe0> ld r0,88(r26)
Sometime during dpcpu_init:
type 0x380 srr0 0xa87be8 dar 0xe000000000022ef8
0000000000a87be4 <.memcpy+0x140> ldu r0,-8(r9)
0000000000a87be8 <.memcpy+0x144> stdu r0,-8(r11)
0000000000a87bec <.memcpy+0x148> bdnz 0000000000a87be4 <.memcpy+0x140>
Sometime after msgbufinit returned:
type 0x380 srr0 0xa5d598 dar 0xc00000036ebd4020
0000000000a5d594 <.vm_page_startup+0x6ac> li r11,0
0000000000a5d598 <.vm_page_startup+0x6b0> std r11,32(r29)
type 0x380 srr0 0xa8ee80 dar 0xc00000007f5e0000
0000000000a8ee7c <.moea64_zero_page+0x178> mr r11,r9
0000000000a8ee80 <.moea64_zero_page+0x17c> dcbz 0,r10
Successful boot example . . .
Sometime after the moea64_bootstrap_slb_prefault
loop finished: i.e., for bs_remap_earlyboot
related activity.
type 0x380 srr0 0xa87f14 dar 0xc000000003d99708
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
type 0x380 srr0 0xa8fbe4 dar 0xc000000018c99000
0000000000a8fbe0 <.moea64_pte_unset_native+0x6c> ld r2,40(r1)
0000000000a8fbe4 <.moea64_pte_unset_native+0x70> ldx r9,r29,r27
Sometime after numa_mem_regions returned:
(so after moea64_bootstrap_native)
type 0x380 srr0 0xa842c8 dar 0x9003e000
0000000000a8fbe0 <.moea64_pte_unset_native+0x6c> ld r2,40(r1)
0000000000a8fbe4 <.moea64_pte_unset_native+0x70> ldx r9,r29,r27
Sometime after msgbufinit returned:
type 0x480 srr0 0xff846d78 dar 0x9003e000
(srr0: Probably an openfirmware code address?)
type 0x380 srr0 0xa87f14 dar 0xc00000037fffa000
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
type 0x380 srr0 0xa5d598 dar 0xc00000036ebd4020
0000000000a5d594 <.vm_page_startup+0x6ac> li r11,0
0000000000a5d598 <.vm_page_startup+0x6b0> std r11,32(r29)
type 0x380 srr0 0xa8ee80 dar 0xc00000007f5e0000
0000000000a8ee7c <.moea64_zero_page+0x178> mr r11,r9
0000000000a8ee80 <.moea64_zero_page+0x17c> dcbz 0,r10
Sometime after platform_smp_probe_threads
returned:
type 0x380 srr0 0xa406b4 dar 0xe0000000583ac000
0000000000a406b0 <.trash_dtor+0x2c> mtctr r9
0000000000a406b4 <.trash_dtor+0x30> stw r0,0(r3)
0000000000a406b8 <.trash_dtor+0x34> addi r3,r3,4
0000000000a406bc <.trash_dtor+0x38> bdnz 0000000000a406b4 <.trash_dtor+0x30>
Sometime during the cpu_mp_unleash final DELAY:
type 0x380 srr0 0xacbec8 dar 0xe000000058403b38
0000000000acbec0 <blocked_loop+0xc> isync
0000000000acbec4 <blocked_loop+0x10> ld r17,1056(r13)
0000000000acbec8 <blocked_loop+0x14> ld r1,168(r17)
Failed boot example . . .
Sometime after the moea64_bootstrap_slb_prefault
loop finished: i.e., for bs_remap_earlyboot
related activity.
type 0x380 srr0 0xa87f14 dar 0xc000000003d99708
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
Sometime after msgbufinit returned:
type 0x380 srr0 0xa87f14 dar 0xc00000037fffa000
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
Sometime after platform_smp_probe_threads
returned:
type 0x380 srr0 0x6d7520 dar 0xe000000064d22000
00000000006d751c <.callout_cpu_init+0x94> li r0,0
00000000006d7520 <.callout_cpu_init+0x98> stdx r0,r11,r9
type 0x380 srr0 0xa406b4 dar 0xe0000000583ac000
0000000000a406b0 <.trash_dtor+0x2c> mtctr r9
0000000000a406b4 <.trash_dtor+0x30> stw r0,0(r3)
0000000000a406b8 <.trash_dtor+0x34> addi r3,r3,4
0000000000a406bc <.trash_dtor+0x38> bdnz 0000000000a406b4 <.trash_dtor+0x30>
Failed boot example . . .
Sometime after the moea64_bootstrap_slb_prefault
loop finished: i.e., for bs_remap_earlyboot
related activity.
type 0x480 srr0 0xab6948 dar 0x1e29000
0000000000ab6944 <.bs_gen_map+0x110> lwz r0,0(r6)
0000000000ab6948 <.bs_remap_earlyboot> mflr r0
0000000000ab694c <.bs_remap_earlyboot+0x4> std r22,-80(r1)
type 0x380 srr0 0xa87f14 dar 0xc000000003d99708
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
Sometime during dpcpu_init:
type 0x380 srr0 0xa87be8 dar 0xe000000000022ef8
0000000000a87be4 <.memcpy+0x140> ldu r0,-8(r9)
0000000000a87be8 <.memcpy+0x144> stdu r0,-8(r11)
0000000000a87bec <.memcpy+0x148> bdnz 0000000000a87be4 <.memcpy+0x140>
Sometime after numa_mem_regions returned:
(so after moea64_bootstrap_native)
type 0x380 srr0 0xa842c8 dar 0x9003e000
0000000000a842c4 <.ofwfb_bitblt_bitmap+0x20c> add r9,r6,r9
0000000000a842c8 <.ofwfb_bitblt_bitmap+0x210> stwx r11,r9,r8
Sometime after msgbufinit returned:
type 0x480 srr0 0xff846d78 dar 0x9003e000
(srr0: Probably an openfirmware code address?)
type 0x380 srr0 0xa87f14 dar 0xc00000037fffa000
0000000000a87f14 <.memset+0x20> stbx r4,r9,r3
0000000000a87f18 <.memset+0x24> addi r9,r9,1
0000000000a87f1c <.memset+0x28> bdnz 0000000000a87f14 <.memset+0x20>
type 0x380 srr0 0xa8ee80 dar 0xc00000007f5e0000
0000000000a8ee7c <.moea64_zero_page+0x178> mr r11,r9
0000000000a8ee80 <.moea64_zero_page+0x17c> dcbz 0,r10
Sometime after platform_smp_probe_threads
returned:
type 0x380 srr0 0x6d7520 dar 0xe000000064d22000
00000000006d751c <.callout_cpu_init+0x94> li r0,0
00000000006d7520 <.callout_cpu_init+0x98> stdx r0,r11,r9
Some prior forms of sampling recorded less about the
calling context but showed some things like the
below. It was a different kernel build and the
code I'm looking up is newer so the detailed
address might not have the same instruction it
did back then. But the routine name could be
suggestive.
type 0x380 srr0 0xa8fb30 dar 0xc000000018c99070
0000000000a8fb28 <.moea64_pte_insert_native+0x204> li r5,745
0000000000a8fb2c <.moea64_pte_insert_native+0x208> bl 00000000009897ac <.nlm_cancel_msg_1_svc+0x324c>
0000000000a8fb30 <.moea64_pte_insert_native+0x20c> ld r2,40(r1)
type 0x380 srr0 0xa8edcc dar 0xc00000007f5e0000
0000000000a8edc4 <.moea64_zero_page+0xc0> add r9,r8,r10
0000000000a8edc8 <.moea64_zero_page+0xc4> ld r0,8(r9)
0000000000a8edcc <.moea64_zero_page+0xc8> add r0,r11,r0
type 0x380 srr0 0xacbd08 dar 0xe000000058403b38
0000000000acbd00 <.longjmp+0x50> ld r0,176(r3)
0000000000acbd04 <.longjmp+0x54> mtcr r0
0000000000acbd08 <.longjmp+0x58> ld r0,168(r3)
type 0x480 srr0 0xacbd08 dar 0xe000000058403b38
0000000000acbd00 <.longjmp+0x50> ld r0,176(r3)
0000000000acbd04 <.longjmp+0x54> mtcr r0
0000000000acbd08 <.longjmp+0x58> ld r0,168(r3)
type 0x380 srr0 0xacbd18 dar 0xe000000058403b38
0000000000acbd10 <.longjmp+0x60> ld r0,184(r3)
0000000000acbd14 <.longjmp+0x64> mtctr r0
0000000000acbd18 <.longjmp+0x68> ld r0,192(r3)
0000000000acbd1c <.longjmp+0x6c> mtxer r0
type 0x380 srr0 0xa8fba0 dar 0xc0000000035875a0
0000000000a8fb98 <.moea64_pte_unset_native+0x24> stdu r1,-192(r1)
0000000000a8fb9c <.moea64_pte_unset_native+0x28> mr r31,r1
0000000000a8fba0 <.moea64_pte_unset_native+0x2c> mr r26,r4
0000000000a8fba4 <.moea64_pte_unset_native+0x30> ld r29,48(r4)
0000000000a8fba8 <.moea64_pte_unset_native+0x34> rldicr r29,r29,4,59
0000000000a8fbac <.moea64_pte_unset_native+0x38> ld r28,1664(r2)
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-ppc
mailing list