Index: arch/sparc/dev/if_ie.c =================================================================== RCS file: /cvs/src/sys/arch/sparc/dev/if_ie.c,v retrieving revision 1.62 diff -u -p -r1.62 if_ie.c --- arch/sparc/dev/if_ie.c 16 Mar 2016 15:41:10 -0000 1.62 +++ arch/sparc/dev/if_ie.c 29 Mar 2016 10:54:38 -0000 @@ -998,19 +998,6 @@ static __inline void iexmit(sc) struct ie_softc *sc; { - -#if NBPFILTER > 0 - /* - * If BPF is listening on this interface, let it see the packet before - * we push it on the wire. - */ - if (sc->sc_arpcom.ac_if.if_bpf) - bpf_tap(sc->sc_arpcom.ac_if.if_bpf, - sc->xmit_cbuffs[sc->xctail], - SWAP(sc->xmit_buffs[sc->xctail]->ie_xmit_flags), - BPF_DIRECTION_OUT); -#endif - sc->xmit_buffs[sc->xctail]->ie_xmit_flags |= IE_XMIT_LAST; sc->xmit_buffs[sc->xctail]->ie_xmit_next = SWAP(0xffff); ST_24(sc->xmit_buffs[sc->xctail]->ie_xmit_buf, @@ -1314,6 +1301,11 @@ iestart(ifp) IFQ_DEQUEUE(&sc->sc_arpcom.ac_if.if_snd, m); if (!m) break; + +#if NBPFILTER > 0 + if (ifp->if_bpf) + bpf_mtap(ifp->if_bpf, m, BPF_DIRECTION_OUT); +#endif len = 0; buffer = sc->xmit_cbuffs[sc->xchead]; Index: dev/isa/if_ie.c =================================================================== RCS file: /cvs/src/sys/dev/isa/if_ie.c,v retrieving revision 1.50 diff -u -p -r1.50 if_ie.c --- dev/isa/if_ie.c 14 Mar 2016 23:08:06 -0000 1.50 +++ dev/isa/if_ie.c 29 Mar 2016 10:54:38 -0000 @@ -1120,18 +1120,6 @@ iexmit(sc) sc->xctail); #endif -#if NBPFILTER > 0 - /* - * If BPF is listening on this interface, let it see the packet before - * we push it on the wire. - */ - if (sc->sc_arpcom.ac_if.if_bpf) - bpf_tap(sc->sc_arpcom.ac_if.if_bpf, - sc->xmit_cbuffs[sc->xctail], - sc->xmit_buffs[sc->xctail]->ie_xmit_flags, - BPF_DIRECTION_OUT); -#endif - sc->xmit_buffs[sc->xctail]->ie_xmit_flags |= IE_XMIT_LAST; sc->xmit_buffs[sc->xctail]->ie_xmit_next = 0xffff; sc->xmit_buffs[sc->xctail]->ie_xmit_buf =