Date: Tue, 7 May 2019 19:57:40 -0700 From: Mark Millard <marklmi@yahoo.com> To: Justin Hibbits <chmeeedalf@gmail.com> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org> Subject: Re: head -r347003 on 2-socket/2-cores-each G5 PowerMac11,2's: one type of boot-blocking context found Message-ID: <BA575D6E-907D-40FD-80A7-AA4C836311B7@yahoo.com> In-Reply-To: <C85B1B21-5BF6-4CFC-B928-2F19960B91E2@yahoo.com> References: <D2CEBBBA-40A5-4924-9817-53A8ED81011E@yahoo.com> <20190507130654.20a269f6@titan.knownspace> <C85B1B21-5BF6-4CFC-B928-2F19960B91E2@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
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<=3Ddar . Failed boot example . . . Sometime after the moea64_bootstrap_slb_prefault loop finished: i.e., for bs_remap_earlyboot related activity.=20 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.=20 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.=20 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:=20 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.=20 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:=20 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.=20 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) =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BA575D6E-907D-40FD-80A7-AA4C836311B7>