> On Jul 6, 2021, at 3:44 PM, Mark Kettenis <[email protected]> wrote:
> 
>> Date: Tue, 6 Jul 2021 14:40:54 -0400 (EDT)
>> From: [email protected]
>> 
>>> Synopsis:   kernel data fault in data_access_fault
>>> Category:   sparc64
>>> Environment:
>>      System      : OpenBSD 6.9
>>      Details     : OpenBSD 6.9-current (GENERIC.MP) #3: Thu Jul  1 18:00:32 
>> EDT 2021
>>                       
>> [email protected]:/sys/arch/sparc64/compile/GENERIC.MP
>> 
>>      Architecture: OpenBSD.sparc64
>>      Machine     : sparc64
>>> Description:
>>      I noticed my T4-1 had paniced while sitting idle. Kernel built from
>> sources on July 1:
>> 
>> ddb{5}> show panic
>> *cpu5: kernel data fault: pc=10122a4 addr=fe2620229c
>> ddb{5}> trace
>> data_access_fault(400e97cbcf0, 31, 10122a4, fe2620229c, fe26202000, 1) at 
>> data_
>> access_fault+0x2f0
>> sun4v_datatrap(400e97cbed0, fffffffffffffffe, fe98d08000, 44000002, 284bf, 
>> 0) a
>> t sun4v_datatrap+0x210
>> Lslowtrap_reenter(18, fea941b9b8, 18, 0, 0, 0) at Lslowtrap_reenter+0xf8
>> ddb{5}> show uvm
>> Current UVM status:
>>  pagesize=8192 (0x2000), pagemask=0x1fff, pageshift=13
>>  1992286 VM pages: 78190 active, 26648 inactive, 1 wired, 1472221 free 
>> (184408
>> zero)
>>  min  10% (25) anon, 10% (25) vnode, 5% (12) vtext
>>  freemin=66409, free-target=88545, inactive-target=0, wired-max=664095
>>  faults=312471313, traps=337046503, intrs=-1254972556, ctxswitch=446408195 
>> fpu
>> switch=7019652
>>  softint=12672729, syscalls=514395307, kmapent=13
>>  fault counts:
>>    noram=0, noanon=0, noamap=0, pgwait=0, pgrele=0
>>    ok relocks(total)=153776(154263), anget(retries)=38912386(0), 
>> amapcopy=2551
>> 1212
>>    neighbor anon/obj pg=8334997/29957405, gets(lock/unlock)=20055546/154263
>>    cases: anon=36090037, anoncow=2822349, obj=17784842, prcopy=2270217, 
>> przero
>> =252644295
>>  daemon and swap counts:
>>    woke=0, revs=0, scans=0, obscans=0, anscans=0
>>    busy=0, freed=0, reactivate=0, deactivate=0
>>    pageouts=0, pending=0, nswget=0
>>    nswapdev=1
>>    swpages=2064384, swpginuse=0, swpgonly=0 paging=0
>>  kernel pointers:
>>    objs(kern)=0x1c62428
>> ddb{5}> show bcstats
>> Current Buffer Cache status:
>> numbufs 186794 busymapped 0, delwri 12
>> kvaslots 49807 avail kva slots 49807
>> bufpages 373572, dmapages 373572, dirtypages 24
>> pendingreads 0, pendingwrites 0
>> highflips 0, highflops 0, dmaflips 0
>> ddb{5}> machine ddbcpu 0 
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(2018360, 4001516ed70, 194f440, 185e9b8, 0, 3b9ac800) at 
>> sched_idle+0
>> x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{0}> trace
>> sched_idle(2018360, 4001516ed70, 194f440, 185e9b8, 0, 3b9ac800) at 
>> sched_idle+0
>> x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{0}> machine ddbcpu 1
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0628360, 4001516eac0, 194f440, 0, 0, 3b9ac800) at 
>> sched_idle+0x1
>> 58
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{1}> machine ddbcpu 2
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0638360, 4001516f020, 194f440, e80, 44, 3b9ac800) at 
>> sched_idle+
>> 0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{2}> machine ddbcpu 3
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0648360, 4001516f580, 194f440, 4001512c688, 0, 3b9ac800) at 
>> sche
>> d_idle+0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{3}> machine ddbcpu 4
>> Stopped at      __mp_lock+0x68: ld              [%o0 + 0x800], %g1
>> syscall_setup(ffffffffffffffff, fffffffffffe42a0, 0, 0, 0, 3e204d5fa0) at 
>> sysca
>> ll_setup+0x134
>> ddb{4}> trace
>> syscall_setup(ffffffffffffffff, fffffffffffe42a0, 0, 0, 0, 3e204d5fa0) at 
>> sysca
>> ll_setup+0x134
>> ddb{4}> machine ddbcpu 5
>> Stopped at      db_enter+0xc:   jmpl            [%o7 + 0x8], %g0
>> data_access_fault(400e97cbcf0, 31, 10122a4, fe2620229c, fe26202000, 1) at 
>> data_
>> access_fault+0x2f0
>> sun4v_datatrap(400e97cbed0, fffffffffffffffe, fe98d08000, 44000002, 284bf, 
>> 0) a
>> t sun4v_datatrap+0x210
>> Lslowtrap_reenter(18, fea941b9b8, 18, 0, 0, 0) at Lslowtrap_reenter+0xf8
>> ddb{5}> machine ddbcpu 6
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0678360, 40015161840, 194f440, 0, 0, 3b9ac800) at 
>> sched_idle+0x1
>> 58
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{6}> machine ddbcpu 7
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0688360, 400151612e0, 0, 0, 0, 0) at sched_idle+0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{7}> machine ddbcpu 8
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0698360, 40015160ad0, 0, 0, 0, 0) at sched_idle+0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ddb{8}> machine ddbcpu 9
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e06a8360, 40015160820, 0, 0, 0, 0) at sched_idle+0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> ...
>> ddb{62}> machine ddbcpu 0x3f
>> Stopped at      cpu_idle_cycle+0x44:    and             %g1, -0x3, %g1
>> sched_idle(400e0a08360, 40015142b20, 0, 0, 0, 0) at sched_idle+0x158
>> proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x14
>> 
>> /sys/arch/sparc64/sparc64/trap.c:869
>>     2f0:       84 10 a0 00     mov  %g2, %g2
>>                        2f0: R_SPARC_M44        uvmexp
>> 
>> /sys/arch/sparc64/sparc64/trap.c:869
>>        uvmexp.traps++;
> 
> I fear there's nothing in there that provides a useful hint what went
> wrong.

Ok. Thanks for looking it over.

-Kurt

Reply via email to