NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
re: kern/50186: sparc memfault panic after 7.99.21 ARP changes
> >From GENERIC:
>
> cpu0: data fault: pc=0xf00a626c addr=0x10 sfsr=0x326<PERR=0x0,LVL=0x3,AT=0x1,FT=0x1,FAV,OW>
> panic: kernel fault
> Stopped in pid 0.5 (system) at netbsd:cpu_Debugger+0x4: or %o7, %g0, %g1
> db> bt
> cpu_Debugger(0xf03efb58, 0xf9ac7d20, 0xf0482c00, 0xf0483a58, 0xf0483800, 0x104) at netbsd:panic+0x20
> panic(0xf03efb58, 0x0, 0xf00a626c, 0x10, 0xf9ac7d40, 0xf045c800) at netbsd:mem_access_fault4m+0x5b0
> mem_access_fault4m(0x9, 0x326, 0x10, 0xf9ac7de0, 0xf0459b20, 0xf0a60540) at netbsd:memfault_sun4m+0xe8
> memfault_sun4m(0xf0b8852c, 0x1, 0x0, 0xf04712a0, 0xf0a60544, 0xf0a60544) at netbsd:arptimer+0x6c
> arptimer(0xf0b88480, 0xf0a60540, 0xf0b8c808, 0x0, 0xf0b8852c, 0xf0488800) at netbsd:callout_softclock+0x154
> callout_softclock(0xf04712a4, 0x1000000, 0x10000, 0xf04712a0, 0xf0b88480, 0xf00a61d8) at netbsd:softint_thread+0x94
> softint_thread(0xf0a60540, 0x3000, 0x2000, 0x0, 0x0, 0xf9ac0218) at netbsd:lwp_trampoline+0x8
> db>
OK, so i built my own GENERIC. i get this:
(gdb) l *(arptimer+0x6c)
0xf00a6244 is in arptimer (/usr/src4/sys/netinet/if_arp.c:352).
347 ifp = lle->lle_tbl->llt_ifp;
348
349 callout_stop(&lle->la_timer);
350
351 /* XXX: LOR avoidance. We still have ref on lle. */
352 LLE_WUNLOCK(lle);
353
354 /* We have to call this w/o lock */
355 arptfree(lle);
disass/m arptimer gives:
351 /* XXX: LOR avoidance. We still have ref on lle. */
352 LLE_WUNLOCK(lle);
0xf00a6244 <+108>: call 0xf0163fd0 <rw_vector_exit> <--- [a]
0xf00a6248 <+112>: mov %i4, %o0
but my addresses don't match yours entirely. [a] is the instruction that
appears to me faulting... which makes little sense.
John, can you try the above gdb commands for yourself? thanks.
.mrg.
Home |
Main Index |
Thread Index |
Old Index