Re: PANIC: trap.c

From: Max Laier <max_at_love2party.net>
Date: Tue, 17 Feb 2004 03:16:10 +0100
On Monday 16 February 2004 03:54, Robert Watson wrote:
> On Mon, 16 Feb 2004, Jiri Mikulas wrote:
> > Hello, just only for info I got this panic on:  FreeBSD 5.2-CURRENT
> > #1: Mon Feb 16 00:53:39 CET 2004
> >
> > I built few kernels from saturday morning to sunday evening and with
> > all of them i got this panic ..  (my last functional kernel is from
> > FreeBSD 5.2-CURRENT #0: Mon Feb 9 19:53:47 CET 2004)  Jiri
>
> It looks like 'ifp' in ip_output.c is NULL here (the offset of
> if_hwassist is 0x98).  Are you running with DUMMYNET?  I'm wondering if
> the recent commit to clean up MT_TAG pseudo-mbufs has a loose end
> somewhere.  Try backing ouf the following commit locally:
>
> mlaier      2004/02/13 11:14:16 PST
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/net              bridge.c if_ethersubr.c
>     sys/netinet          in_proto.c ip_divert.c ip_dummynet.c
>                          ip_dummynet.h ip_fastfwd.c ip_fw.h
>                          ip_fw2.c ip_input.c ip_output.c ip_var.h
>                          tcp_debug.c tcp_input.c
>     sys/sys              mbuf.h
>   Added files:
>     sys/netinet          ip_divert.h
>   Log:
>   This set of changes eliminates the use of MT_TAG "pseudo mbufs",
> replacing
>   them mostly with packet tags (one case is handled by using an mbuf
> flag since the linkage between "caller" and "callee" is direct and
> there's no need to incur the overhead of a packet tag).
>
>   This is (mostly) work from: sam
>
>   Silence from: -arch
>   Approved by: bms(mentor), sam, rwatson
>
>   Revision  Changes    Path
>   1.74      +5 -9      src/sys/net/bridge.c
>   1.156     +2 -15     src/sys/net/if_ethersubr.c
>   1.68      +1 -0      src/sys/netinet/in_proto.c
>   1.82      +48 -21    src/sys/netinet/ip_divert.c
>   1.1       +83 -0     src/sys/netinet/ip_divert.h (new)
>   1.77      +125 -91   src/sys/netinet/ip_dummynet.c
>   1.28      +17 -20    src/sys/netinet/ip_dummynet.h
>   1.6       +18 -67    src/sys/netinet/ip_fastfwd.c
>   1.81      +0 -1      src/sys/netinet/ip_fw.h
>   1.54      +25 -5     src/sys/netinet/ip_fw2.c
>   1.261     +56 -118   src/sys/netinet/ip_input.c
>   1.207     +60 -53    src/sys/netinet/ip_output.c
>   1.82      +16 -9     src/sys/netinet/ip_var.h
>   1.22      +1 -0      src/sys/netinet/tcp_debug.c
>   1.225     +2 -6      src/sys/netinet/tcp_input.c
>   1.136     +1 -18     src/sys/sys/mbuf.h

Okay, that was it:
We forgot to remove the tag for certain codepathes (ip_input -> ip_forward 
-> ip_output) which was previously done by moving m to m->m_next (the 
actual data after the MT_TAG). Please try the attached patch to 
ip_input.c (forget the previous one) and report back if it works for you.

Thanks in advance.

-- 
Best regards,				| mlaier_at_freebsd.org
Max Laier				| ICQ #67774661
http://pf4freebsd.love2party.net/	| mlaier_at_EFnet

Received on Mon Feb 16 2004 - 17:16:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:43 UTC