aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/net/if_enc.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/sys/net/if_enc.c b/sys/net/if_enc.c
index 071e4cd4ab09..10c0065da35e 100644
--- a/sys/net/if_enc.c
+++ b/sys/net/if_enc.c
@@ -86,27 +86,18 @@ static int enc_ioctl(struct ifnet *, u_long, caddr_t);
static int enc_output(struct ifnet *ifp, struct mbuf *m,
struct sockaddr *dst, struct rtentry *rt);
static int enc_clone_create(struct if_clone *, int);
-static int enc_clone_destroy(struct ifnet *);
+static void enc_clone_destroy(struct ifnet *);
IFC_SIMPLE_DECLARE(enc, 1);
-static int
+static void
enc_clone_destroy(struct ifnet *ifp)
{
-
- mtx_lock(&enc_mtx);
- /* do not allow enc0 to be destroyed */
- if (encif == ifp) {
- mtx_unlock(&enc_mtx);
- return (EBUSY);
- }
- mtx_unlock(&enc_mtx);
+ KASSERT(ifp != encif, ("%s: destroying encif", __func__));
bpfdetach(ifp);
if_detach(ifp);
if_free(ifp);
-
- return (0);
}
static int