From owner-freebsd-bugs Sat May 13 18:00:31 1995 Return-Path: bugs-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id SAA16914 for bugs-outgoing; Sat, 13 May 1995 18:00:31 -0700 Received: from jabba.fdn.org (jabba.fdn.org [193.55.4.70]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id SAA16908 for ; Sat, 13 May 1995 18:00:26 -0700 Received: (from uucp@localhost) by jabba.fdn.org (8.6.8/8.6.9) with UUCP id DAA29264; Sun, 14 May 1995 03:00:05 +0200 Received: (pb@localhost) by fasterix.frmug.fr.net (8.6.11/fasterix-941011) id CAA02666; Sun, 14 May 1995 02:58:58 +0200 From: Pierre Beyssac Message-Id: <199505140058.CAA02666@fasterix.frmug.fr.net> Subject: Re: -current kernel panics in rtfree To: pritc003@maroon.tc.umn.edu (Mike Pritchard) Date: Sun, 14 May 1995 02:58:56 +0200 (MET DST) Cc: bugs@FreeBSD.org In-Reply-To: <199505130245.VAA00225@mpp.com> from "Mike Pritchard" at May 12, 95 09:45:44 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 2295 Sender: bugs-owner@FreeBSD.org Precedence: bulk Mike Pritchard writes: [ panic in rtfree during a slip connection ] Same for me using PPP. Like Mike, I noticed this problem recently. I run a kernel compiled from friday night -current. I have a different kernel stack dump, though. My panics seem to occur during a UDP sendto. Note the recursive call to rtfree. It seems that the code causing the panic is : void rtfree(rt) register struct rtentry *rt; { register struct radix_node_head *rnh = rt_tables[rt_key(rt)->sa_family]; register struct ifaddr *ifa; if (rt == 0 || rnh == 0) panic("rtfree"); Which is recursively called by rtfree() itself at the end of the subroutine : if (rt->rt_parent) { RTFREE(rt->rt_parent); } I'll try to identify the problem, if I can. I'll keep the crash dump(s) :-) in case anybody wishes me to provide more info. panic: rtfree [...] #1 0xf01105a3 in panic () #2 0xf0135eef in rtfree () #3 0xf0135f84 in rtfree () #4 0xf013efaf in ip_output () #5 0xf0144d35 in udp_output () #6 0xf0144ff5 in udp_usrreq () #7 0xf011d4e2 in sosend () #8 0xf011fad3 in sendit () #9 0xf011fbb0 in sendto () #10 0xf01701fd in syscall () #11 0xf016894b in Xsyscall () Here are the results of a "netstat -r -n" done during a PPP connection, in case it might help. I've not been able to extract the same info from the crash dump with "netstat -r -n -M vmcore" ("kvm_open: cannot read IdlePTD"), so don't take the following as a strict image of the routes at the time of the panic. They're likely very close, however. Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 193.55.4.3 UGc 2 0 ppp0 127.0.0.1 127.0.0.1 UH 1 436 lo0 193.55.4.3 193.55.4.149 UH 3 5 ppp0 193.56.58 link#1 UC 0 0 193.56.58.138 0:40:5:12:bd:dd UHLW 1 40 lo0 I have a local ethernet (193.56.58.0) on a NE2000 clone, my local PPP address is 193.55.4.149 (fasterix.fdn.fr) and the PPP server is 193.55.4.3. -- Pierre Beyssac pb@fasterix.frmug.fr.net pb@fasterix.fdn.fr FreeBSD, NetBSD, Linux -- Il y a moins bien, mais c'est plus cher. You can also get less bang for more bucks. (translation F. Berjon)