kern/168742: detaching of ethernet adapter with configured
vlans leads to panic
John Baldwin
jhb at freebsd.org
Tue Aug 7 12:05:45 UTC 2012
On Tuesday, August 07, 2012 12:48:31 am ae at 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
More information about the freebsd-net
mailing list