From owner-cvs-src@FreeBSD.ORG Wed Jun 21 08:06:47 2006 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C6FD16A474; Wed, 21 Jun 2006 08:06:47 +0000 (UTC) (envelope-from maxim@macomnet.ru) Received: from mp2.macomnet.net (mp2.macomnet.net [195.128.64.6]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC8D143D55; Wed, 21 Jun 2006 08:06:44 +0000 (GMT) (envelope-from maxim@macomnet.ru) Received: from localhost (localhost.int.ru [127.0.0.1] (may be forged)) by mp2.macomnet.net (8.13.7/8.13.3) with ESMTP id k5L86gSd093649; Wed, 21 Jun 2006 12:06:43 +0400 (MSD) (envelope-from maxim@macomnet.ru) Date: Wed, 21 Jun 2006 12:06:41 +0400 (MSD) From: Maxim Konovalov To: Gleb Smirnoff In-Reply-To: <200606210602.k5L62Zor029243@repoman.freebsd.org> Message-ID: <20060621120212.D93005@mp2.macomnet.net> References: <200606210602.k5L62Zor029243@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/net if.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Jun 2006 08:06:47 -0000 On Wed, 21 Jun 2006, 06:02-0000, Gleb Smirnoff wrote: > glebius 2006-06-21 06:02:35 UTC > > FreeBSD src repository > > Modified files: > sys/net if.c > Log: > - First initialize ifnet, and then insert it into global > list. > - First remove from global list, then start destroying. > > PR: kern/97679 > Submitted by: Alex Lyashkov > Reviewed by: rwatson, brooks FWIW, even with Yar's recent commit to if_vlan.c it still panics. I told Alex about that. A testcase below. Run it for several minutes. #11 0xc05e1a4a in calltrap () at /usr/src/sys/i386/i386/exception.s:138 #12 0xc05608cb in in6ifa_ifpwithaddr (ifp=0xdeadc0de, addr=0xc39b5218) at /usr/src/sys/netinet6/in6.c:1862 #13 0xc055e81d in in6_control (so=0xc2bbda60, cmd=0xc1206949, data=0xc39b5200 "vlan2349", ifp=0xc3973000, td=0xc39b5210) at /usr/src/sys/netinet6/in6.c:459 #14 0xc052c43c in ifioctl (so=0xc2bbda60, cmd=0xc1206949, data=0xc39b5200 "vlan2349", td=0xc2afd870) at /usr/src/sys/net/if.c:1530 #15 0xc04efb47 in soo_ioctl (fp=0xdeadc0de, cmd=0xc1206949, data=0xc39b5200, active_cred=0xc2e64700, td=0xc2afd870) at /usr/src/sys/kern/sys_socket.c:214 #16 0xc04ea810 in ioctl (td=0xc2afd870, uap=0xd56a7d04) at file.h:265 #!/bin/sh create() { for i in `jot 4000` do ifconfig vlan$i create ifconfig vlan$i vlan $i vlandev rl0 ifconfig vlan$i 10.10.10.10/32 done } destroy() { for i in `jot 4000` do ifconfig vlan$i destroy done } show() { while :; do ifconfig >/dev/null 2>&1; done } show & while : do create destroy done %%% -- Maxim Konovalov