FreeBSD 7.3/i386 libalias related panic

Peter Jeremy peterjeremy at acm.org
Tue Apr 6 19:25:06 UTC 2010


On 2010-Apr-06 00:37:51 +0400, Artem Kim <artem_kim at inbox.ru> wrote:
>Fatal trap 12: page fault while in kernel mode
>cpuid = 1; apic id = 01
>fault virtual address   = 0x7d4c

This suggests an offset from a NULL pointer.

>0x8069ac41 is in DeleteLink (/usr/src/sys/netinet/libalias/alias_db.c:857).
>852     {
>853             struct libalias *la = lnk->la;
>854
>855             LIBALIAS_LOCK_ASSERT(la);
>856     /* Don't do anything if the link is marked permanent */
>857             if (la->deleteAllLinks == 0 && lnk->flags & LINK_PERMANENT)
>858                     return;

>(kgdb) bt
>#7  0x8069ac41 in DeleteLink (lnk=0x84e0f980) at /usr/src/sys/netinet/libalias/alias_db.c:853
>#8  0x8069ae3e in HouseKeeping (la=0x84874000) at /usr/src/sys/netinet/libalias/alias_db.c:843

In the absence of someone who's seen this before, my initial guess is
that lnk->la is corrupted in frame #7.  I'd start with 'print *lnk' at
frame #7 to confirm this.  If so, you could go up to frame #8 and work
through the linkTableOut chain to find which entry is corrupt - but
actually finding _why_ it's corrupt will take a lot more work.

If this is repeatable, I'd suggest adding WITNESS, WITNESS_SKIPSPIN
and INVARIANTS and see if you can get the problem to show up closer
to its cause.

-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20100406/9530a19b/attachment.pgp


More information about the freebsd-stable mailing list