Subject: Re: ifconfig vlan
To: None <itojun@iijlab.net>
From: enami tsugutomo <enami@sm.sony.co.jp>
List: tech-net
Date: 11/10/2000 10:54:28
itojun@iijlab.net writes:

> 	it panics near if_vlan.c line 660 (in vlan_ether_purgemulti).
> 	still have no time to track it down.

Please try this patch.  The first hunk is the important one.

enami.
Index: if_vlan.c
===================================================================
RCS file: /cvsroot/syssrc/sys/net/if_vlan.c,v
retrieving revision 1.17
diff -u -r1.17 if_vlan.c
--- if_vlan.c	2000/11/09 05:57:38	1.17
+++ if_vlan.c	2000/11/10 01:43:14
@@ -652,7 +652,7 @@
 		struct ifreq ifreq;
 		struct {
 			char ifr_name[IFNAMSIZ];
-			struct sockaddr_storage;
+			struct sockaddr_storage ifr_ss;
 		} ifreq_storage;
 	} ifreq;
 	struct ifreq *ifr = &ifreq.ifreq;
@@ -661,13 +661,9 @@
 	while ((mc = LIST_FIRST(&ifv->ifv_mc_listhead)) != NULL) {
 		memcpy(&ifr->ifr_addr, &mc->mc_addr, mc->mc_addr.ss_len);
 		(void)(*ifp->if_ioctl)(ifp, SIOCDELMULTI, (caddr_t)ifr);
-		LIST_REMOVE(mc->mc_enm, enm_list);
-		free(mc->mc_enm, M_IFMADDR);
 		LIST_REMOVE(mc, mc_entries);
 		FREE(mc, M_DEVBUF);
 	}
-
-	KASSERT(LIST_FIRST(&ifv->ifv_ec.ec_multiaddrs) == NULL);
 }
 
 static void