if_input() does not need to be protected, ok? Index: net/if_mpw.c =================================================================== RCS file: /cvs/src/sys/net/if_mpw.c,v retrieving revision 1.21 diff -u -p -r1.21 if_mpw.c --- net/if_mpw.c 4 May 2017 15:00:24 -0000 1.21 +++ net/if_mpw.c 15 May 2017 12:58:25 -0000 @@ -268,7 +268,6 @@ mpw_output(struct ifnet *ifp, struct mbu struct mbuf_list ml = MBUF_LIST_INITIALIZER(); struct ether_header *eh, ehc; struct shim_hdr *shim; - int s; if (sc->sc_type == IMR_TYPE_NONE) { m_freem(m); @@ -324,10 +323,7 @@ mpw_output(struct ifnet *ifp, struct mbu } ml_enqueue(&ml, m); - - s = splnet(); if_input(ifp, &ml); - splx(s); return (0); }