From fc4af83ae938495206a57eaf95dcdc32d5165d35 Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Fri, 13 Aug 2004 23:22:53 +0000 Subject: [PATCH] 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. --- sys/dev/nge/if_nge.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c index 798702c2849..50f807a75dd 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;