diff options
author | rwatson <rwatson@FreeBSD.org> | 2004-08-13 23:11:24 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2004-08-13 23:11:24 +0000 |
commit | d12331cbbb51da035d603e9b04243a8b263c5b5e (patch) | |
tree | 9071c0351e28f45a6cd0f17491c0d93d8ef8ac17 /sys/dev/gem | |
parent | b702c717f3619cb25d7640ca78141879a39c4370 (diff) | |
download | FreeBSD-src-d12331cbbb51da035d603e9b04243a8b263c5b5e.zip FreeBSD-src-d12331cbbb51da035d603e9b04243a8b263c5b5e.tar.gz |
Since if_gem doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
Diffstat (limited to 'sys/dev/gem')
-rw-r--r-- | sys/dev/gem/if_gem.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/gem/if_gem.c b/sys/dev/gem/if_gem.c index 60c3dfb..6ec46bb 100644 --- a/sys/dev/gem/if_gem.c +++ b/sys/dev/gem/if_gem.c @@ -249,7 +249,8 @@ gem_attach(sc) if_initname(ifp, device_get_name(sc->sc_dev), device_get_unit(sc->sc_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_start = gem_start; ifp->if_ioctl = gem_ioctl; ifp->if_watchdog = gem_watchdog; |