diff --git a/sys/kern/uipc_mbuf.c b/sys/kern/uipc_mbuf.c index 32aa74f669a6..4182e8c01b9c 100644 --- a/sys/kern/uipc_mbuf.c +++ b/sys/kern/uipc_mbuf.c @@ -1,4 +1,4 @@ -/* $NetBSD: uipc_mbuf.c,v 1.32 1998/08/28 20:05:48 thorpej Exp $ */ +/* $NetBSD: uipc_mbuf.c,v 1.33 1998/12/18 21:40:14 thorpej Exp $ */ /* * Copyright (c) 1982, 1986, 1988, 1991, 1993 @@ -168,19 +168,11 @@ m_reclaim(how) struct ifnet *ifp; int s = splimp(); - /* - * Don't call the protocol drain routines if how == M_NOWAIT, which - * typically means we're in interrupt context. Since we can be - * called from a network hardware interrupt, we could corrupt the - * protocol queues we try to drain them at that time. - */ - if (how == M_WAIT) { - for (dp = domains; dp; dp = dp->dom_next) - for (pr = dp->dom_protosw; - pr < dp->dom_protoswNPROTOSW; pr++) - if (pr->pr_drain) - (*pr->pr_drain)(); - } + for (dp = domains; dp; dp = dp->dom_next) + for (pr = dp->dom_protosw; + pr < dp->dom_protoswNPROTOSW; pr++) + if (pr->pr_drain) + (*pr->pr_drain)(); for (ifp = TAILQ_FIRST(&ifnet); ifp; ifp = TAILQ_NEXT(ifp, if_list)) if (ifp->if_drain) (*ifp->if_drain)(ifp);