On Tuesday, August 07, 2012 12:48:31 am a...@freebsd.org wrote:
> Synopsis: detaching of ethernet adapter with configured vlans leads to panic
> 
> Responsible-Changed-From-To: freebsd-bugs->freebsd-net
> Responsible-Changed-By: ae
> Responsible-Changed-When: Tue Aug 7 04:48:17 UTC 2012
> Responsible-Changed-Why: 
> Reassign.
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=168742

Ugh, I thought I had fixed this in 
http://svnweb.freebsd.org/base?view=revision&revision=208212

I think the problem is the assertion is wrong.  We could add a new DETACHING
flag, but I think the simplest fix is to just remove it.  I'm not sure if a 
similar assertion in if_delmulti_ifma() should also be removed.

Index: if.c
===================================================================
--- if.c        (revision 238992)
+++ if.c        (working copy)
@@ -3058,19 +3058,7 @@ if_delmulti(struct ifnet *ifp, struct sockaddr *sa
 {
        struct ifmultiaddr *ifma;
        int lastref;
-#ifdef INVARIANTS
-       struct ifnet *oifp;
 
-       IFNET_RLOCK_NOSLEEP();
-       TAILQ_FOREACH(oifp, &V_ifnet, if_link)
-               if (ifp == oifp)
-                       break;
-       if (ifp != oifp)
-               ifp = NULL;
-       IFNET_RUNLOCK_NOSLEEP();
-
-       KASSERT(ifp != NULL, ("%s: ifnet went away", __func__));
-#endif
        if (ifp == NULL)
                return (ENOENT);
 

-- 
John Baldwin
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to