Date: Wed, 10 Nov 2004 12:10:28 +0100 From: Sebastian Schulze Struchtrup <sebastian@struchtrup.de> To: Robert Watson <rwatson@freebsd.org> Cc: Arjan Van Leeuwen <avleeuwen@gmail.com> Subject: Re: Panic in 5.3, related to network traffic Message-ID: <4191F724.2010405@struchtrup.de> In-Reply-To: <Pine.NEB.3.96L.1041110094326.60848U-100000@fledge.watson.org> References: <Pine.NEB.3.96L.1041110094326.60848U-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
>Hmm. Odd. The stack trace in your screen shot shows the same mbuf being >passed to icmp_error() was was passed to ip_forward(). This suggests, >given the other arguments, that it's actually the call to icmp_error() on >line 1650, not 1879. I wonder if addr2line is getting confused. > It seems that this is the usual enemy of debugging: compiler optimisation. There's actually only one call. The call in line 1650 jumps to the one generated by line 1879. (line numbers don't match, because I am runnig 6-Current on this machine) /usr/src/sys/netinet/ip_input.c:1711 (1650) 103a: 6a 00 push $0x0 103c: 6a 00 push $0x0 103e: 6a 01 push $0x1 1040: 6a 03 push $0x3 1042: 56 push %esi 1043: e9 fa fd ff ff jmp e42 <ip_forward+0x1a6> /usr/src/sys/netinet/ip_input.c:1711 (1650) e41: 56 push %esi /usr/src/sys/netinet/ip_input.c:1940 (1879) e42: e8 fc ff ff ff call e43 <ip_forward+0x1a7> e47: eb e8 jmp e31 <ip_forward+0x195> > If you use kgdb on the kernel.debug and do: > > l *icmp_error+0x191 > l *ip_forward+0x3d1 > >Do you get different answers? > > Maybe it would help to compile the kernel with INVARIANTS. Then we should get a false assertion somewhere earlier and closer to the problem. I assume that their is an invalid/null mbuf somewhere. It seems that this comes more or less directly from the inferface driver. Just my two cents...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4191F724.2010405>