Date: Sun, 21 Jan 1996 22:52:02 -0600 (CST) From: "Mike Pritchard" <mpp@mpp.minn.net> To: freebsd-current@freebsd.org Subject: Re: Fatal double fault Message-ID: <199601220452.WAA00260@mpp.minn.net> In-Reply-To: <199601220259.UAA00228@mpp.minn.net> from "Mike Pritchard" at Jan 21, 96 08:59:23 pm
next in thread | previous in thread | raw e-mail | index | archive | help
Mike Pritchard wrote: > > The interesting this is that my machine died just at the same point > where I've been having lockups when starting my PPP connection. > For the past several days or so I've been getting lockup where > everything is sleeping on "lockrd" (something in the vm code) > just as my PPP connection is established. I suspect that the above > crash is related. After some playing around, I came up with a little shell script that will lock my machine up consistently, although it doesn't look like the same hang as above. If you run about 4 of these: #!/bin/sh while [ 1 ] do ( ifconfig ppp0 up ipfw addf ldeny all from 10.1.1.1 via ppp0 ) & ( ifconfig ppp0 inet 204.157.201.242 204.157.201.18 down ipfw flush firewall >/dev/null 2>&1 /dev/null & ) done the machine will eventually lock up. A little poking around with the debugger shows that it is looping in netinet/in.c in in_control, around line 390 or so: /* * Multicast address kludge: * If there were any multicast addresses attached to this * interface address, either move them to another address * on this interface, or save them until such time as this * interface is reconfigured for IP. */ IFP_TO_IA(oia->ia_ifp, ia); if (ia) { /* there is another address */ struct in_multi *inm; for(inm = oia->ia_multiaddrs.lh_first; inm; inm = inm->inm_entry.le_next) { IFAFREE(&inm->inm_ia->ia_ifa); ia->ia_ifa.ifa_refcnt++; inm->inm_ia = ia; LIST_INSERT_HEAD(&ia->ia_multiaddrs, inm, inm_entry); } FREE(mk, M_IPMADDR); } else { /* last address on this if deleted, save */ struct in_multi *inm; Here is some netstat & ifconfig output: Script started on Sun Jan 21 22:43:55 1996 1% netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire 127.0.0.1 127.0.0.1 UH 1 0 lo0 204.157.201.5 204.157.201.242 UH 0 0 ppp0 204.157.201.242 127.0.0.1 UGHS 0 0 lo0 224/4 204.157.201.242 US 0 0 ppp0 2% ifconfig ppp0 ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500 inet 204.157.201.242 --> 204.157.201.5 netmask 0xffffff00 3% exit Script done on Sun Jan 21 22:44:05 1996
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601220452.WAA00260>