Port-ofppc archive

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

re: Current port status



> Not a real indication of vr(4) there, but here is another one, also during
> an FTP receive (there is a vr_start in it):
> 
> panic: kernel diagnostic assertion "object != NULL" failed: file
> "/home/frank/netbsd/current/src/sys/kern/subr_pool.c", line 2475 
> cpu0: Begin traceback...
> 0xa941d970: at kern_assert+0x68
> 0xa941d9b0: at pool_cache_get_paddr+0x214
> 0xa941da00: at m_get+0x3c
> 0xa941da10: at m_gethdr+0xc
> 0xa941da20: at vr_start+0xe4
> 0xa941da80: at ifq_enqueue+0xd0
> 0xa941daa0: at ether_output+0x324
> 0xa941daf0: at ip_output+0xab8
> 0xa941dba0: at tcp_output+0x11f4
> 0xa941dc70: at tcp_input+0x1038
> 0xa941de50: at ip_input+0x368
> 0xa941de80: at ipintr+0xdc
> 0xa941dec0: at softint_dispatch+0x158
> 0xa941df20: at softint_fast_dispatch+0xdc
> 0xa941dfe4: at 0x59e3ba90
> trap: kernel read DSI trap @ 0xa932cfe4 by 0x140d58 (DSISR 0x40000000,
> err=14), lr 0x141370
> Press a key to panic.

hmmmm.  this looks like the same "full mag" problem:

                if (__predict_true(pcg->pcg_avail > 0)) {
                        object = pcg->pcg_objects[--pcg->pcg_avail].pcgo_va;
...
                        KASSERT(object != NULL);

> And finally the most frequent panic for me is a lockdebug-panic, which might
> indicate that vr(4) is locking the same mutex during a soft-interrupt
> (vr_start), and then again during a hardware-interrupt (vr_intr)?
> 
> ---8<---
> Mutex error: lockdebug_wantlock: locking against myself
> 
> lock address : 0x00000000a002b074 type     :               spin
> initialized  : 0x0000000000329424
> shared holds :                  0 exclusive:                  1
> shares wanted:                  0 exclusive:                  1
> current cpu  :                  0 last held:                  0
> current lwp  : 0x00000000a0094840 last held: 0x00000000a0094840
> last locked* : 0x0000000000329950 unlocked : 0x0000000000329acc
> owner field  : 000000000000000000 wait/spin:                0/1

i haven't seen this one, but i haven't pushed much.  i'll try more.
can you find out where the 0x00329950 and 0x00329acc code points are?

thanks.


.mrg.


Home | Main Index | Thread Index | Old Index