aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKristof Provost <kp@FreeBSD.org>2020-12-15 16:13:32 +0000
committerKristof Provost <kp@FreeBSD.org>2020-12-15 16:13:32 +0000
commit9b674dde024bf1f8bee7f2670d26bd08aba7f489 (patch)
tree81c99eb5b9ffbfda93412a8db4842016a482038e
parentdc5e65b9c39a09b92955832f6788c8c9d06025f0 (diff)
downloadsrc-9b674dde024bf1f8bee7f2670d26bd08aba7f489.tar.gz
src-9b674dde024bf1f8bee7f2670d26bd08aba7f489.zip
MFC r368238:
net: Revert vnet/epair cleanup race mitigation Revert the mitigation code for the vnet/epair cleanup race (done in r365457). r368237 introduced a more reliable fix. Sponsored by: Modirum MDPay
Notes
Notes: svn path=/stable/12/; revision=368665
-rw-r--r--sys/net/if.c4
-rw-r--r--sys/net/if_epair.c10
2 files changed, 2 insertions, 12 deletions
diff --git a/sys/net/if.c b/sys/net/if.c
index a5104fe7422f..56b12f594814 100644
--- a/sys/net/if.c
+++ b/sys/net/if.c
@@ -1322,10 +1322,6 @@ if_vmove(struct ifnet *ifp, struct vnet *new_vnet)
ifindex_free_locked(ifp->if_index);
IFNET_WUNLOCK();
- /* Don't re-attach DYING interfaces. */
- if (ifp->if_flags & IFF_DYING)
- return;
-
/*
* Perform interface-specific reassignment tasks, if provided by
* the driver.
diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c
index 82f7b4fd559d..376bdbe9117f 100644
--- a/sys/net/if_epair.c
+++ b/sys/net/if_epair.c
@@ -609,14 +609,8 @@ epair_qflush(struct ifnet *ifp)
struct epair_softc *sc;
sc = ifp->if_softc;
-
- /*
- * See epair_clone_destroy(), we can end up getting called twice.
- * Don't do anything on the second call.
- */
- if (sc == NULL)
- return;
-
+ KASSERT(sc != NULL, ("%s: ifp=%p, epair_softc gone? sc=%p\n",
+ __func__, ifp, sc));
/*
* Remove this ifp from all backpointer lists. The interface will not
* usable for flushing anyway nor should it have anything to flush