summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Pieuchot <mpi@cvs.openbsd.org>2015-05-01 16:37:33 +0000
committerMartin Pieuchot <mpi@cvs.openbsd.org>2015-05-01 16:37:33 +0000
commitd19768e5ee198333e493ba8851703cc268f99c42 (patch)
tree4dd3f6fce35746596dea758d1cb80d7fee7f5919
parent1884bb6738b198c3d176991d91656eeb9242fb82 (diff)
Convert to if_input(), ok miod@
-rw-r--r--sys/dev/ic/i82596.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/sys/dev/ic/i82596.c b/sys/dev/ic/i82596.c
index 9c1ac9b01e8..adf3c5b71a6 100644
--- a/sys/dev/ic/i82596.c
+++ b/sys/dev/ic/i82596.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: i82596.c,v 1.40 2014/12/22 02:28:51 tedu Exp $ */
+/* $OpenBSD: i82596.c,v 1.41 2015/05/01 16:37:32 mpi Exp $ */
/* $NetBSD: i82586.c,v 1.18 1998/08/15 04:42:42 mycroft Exp $ */
/*-
@@ -984,7 +984,6 @@ i82596_get(struct ie_softc *sc, int head, int totlen)
MGETHDR(m0, M_DONTWAIT, MT_DATA);
if (m0 == 0)
return (0);
- m0->m_pkthdr.rcvif = &sc->sc_arpcom.ac_if;
m0->m_pkthdr.len = totlen;
len = MHLEN;
m = m0;
@@ -1088,6 +1087,7 @@ i82596_readframe(sc, num)
{
struct ifnet *ifp = &sc->sc_arpcom.ac_if;
struct mbuf *m;
+ struct mbuf_list ml = MBUF_LIST_INITIALIZER();
u_int16_t bstart, bend;
int pktlen;
@@ -1114,17 +1114,10 @@ i82596_readframe(sc, num)
}
#endif
-#if NBPFILTER > 0
- /* Check for a BPF filter; if so, hand it up. */
- if (ifp->if_bpf)
- bpf_mtap(ifp->if_bpf, m, BPF_DIRECTION_IN);
-#endif /* NBPFILTER > 0 */
-
- /*
- * Finally pass this packet up to higher layers.
- */
- ether_input_mbuf(ifp, m);
+ ml_enqueue(&ml, m);
ifp->if_ipackets++;
+
+ if_input(ifp, &ml);
return (0);
}