summaryrefslogtreecommitdiffstats
path: root/sys/dev/de/if_de.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/de/if_de.c')
-rw-r--r--sys/dev/de/if_de.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/de/if_de.c b/sys/dev/de/if_de.c
index 3503289..81335c1 100644
--- a/sys/dev/de/if_de.c
+++ b/sys/dev/de/if_de.c
@@ -4053,7 +4053,8 @@ tulip_txput(tulip_softc_t * const sc, struct mbuf *m)
/*
* bounce a copy to the bpf listener, if any.
*/
- BPF_MTAP(sc->tulip_ifp, m);
+ if (!(sc->tulip_flags & TULIP_DEVICEPROBE))
+ BPF_MTAP(sc->tulip_ifp, m);
/*
* The descriptors have been filled in. Now get ready
@@ -4437,13 +4438,16 @@ tulip_attach(tulip_softc_t * const sc)
ifmedia_init(&sc->tulip_ifmedia, 0,
tulip_ifmedia_change,
tulip_ifmedia_status);
- sc->tulip_flags &= ~TULIP_DEVICEPROBE;
tulip_ifmedia_add(sc);
tulip_reset(sc);
TULIP_UNLOCK(sc);
ether_ifattach(sc->tulip_ifp, sc->tulip_enaddr);
+
+ TULIP_LOCK(sc);
+ sc->tulip_flags &= ~TULIP_DEVICEPROBE;
+ TULIP_UNLOCK(sc);
}
/* Release memory for a single descriptor ring. */
OpenPOWER on IntegriCloud