summaryrefslogtreecommitdiffstats
path: root/sys/dev/sr
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2004-08-13 23:49:48 +0000
committerrwatson <rwatson@FreeBSD.org>2004-08-13 23:49:48 +0000
commite85007f8b5c997cc51171496c1d87e2f68ae229d (patch)
treefa604e48ec075e2bd3244683739801ea2c3c9b88 /sys/dev/sr
parentc5bde45b43cb5136dfeb22988196d6cd8c7c6634 (diff)
downloadFreeBSD-src-e85007f8b5c997cc51171496c1d87e2f68ae229d.zip
FreeBSD-src-e85007f8b5c997cc51171496c1d87e2f68ae229d.tar.gz
Since if_sr 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/sr')
-rw-r--r--sys/dev/sr/if_sr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/sr/if_sr.c b/sys/dev/sr/if_sr.c
index 5f60aef..88668a7 100644
--- a/sys/dev/sr/if_sr.c
+++ b/sys/dev/sr/if_sr.c
@@ -420,7 +420,8 @@ sr_attach(device_t device)
if_initname(ifp, device_get_name(device),
device_get_unit(device));
ifp->if_mtu = PP_MTU;
- ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST;
+ ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST |
+ IFF_NEEDSGIANT;
ifp->if_ioctl = srioctl;
ifp->if_start = srstart;
ifp->if_watchdog = srwatchdog;
OpenPOWER on IntegriCloud