summaryrefslogtreecommitdiffstats
path: root/sys/dev/nge
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2004-08-13 23:22:53 +0000
committerrwatson <rwatson@FreeBSD.org>2004-08-13 23:22:53 +0000
commit5f924be0bb041b3453cb54bf7eddb669e928e6ee (patch)
tree6b225880fe9a08ae717baf27761e01fb33035ccf /sys/dev/nge
parente3c005c4cac0665f6e223f553436320222978714 (diff)
downloadFreeBSD-src-5f924be0bb041b3453cb54bf7eddb669e928e6ee.zip
FreeBSD-src-5f924be0bb041b3453cb54bf7eddb669e928e6ee.tar.gz
Since if_nge doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant. Note: this driver does declare and occasionally reference mutexes, but I believe not nearly enough to provide safety.
Diffstat (limited to 'sys/dev/nge')
-rw-r--r--sys/dev/nge/if_nge.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c
index 798702c..50f807a 100644
--- a/sys/dev/nge/if_nge.c
+++ b/sys/dev/nge/if_nge.c
@@ -888,7 +888,8 @@ nge_attach(dev)
ifp->if_softc = sc;
if_initname(ifp, device_get_name(dev), device_get_unit(dev));
ifp->if_mtu = ETHERMTU;
- ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST;
+ ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST |
+ IFF_NEEDSGIANT;
ifp->if_ioctl = nge_ioctl;
ifp->if_start = nge_start;
ifp->if_watchdog = nge_watchdog;
OpenPOWER on IntegriCloud