aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/cp
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2004-08-13 23:02:17 +0000
committerRobert Watson <rwatson@FreeBSD.org>2004-08-13 23:02:17 +0000
commitc84843f1e551b25886f7a9201637fac5b001e92a (patch)
tree9e1f3b3670049ca726ac73c894edc7cd12455bf1 /sys/dev/cp
parentbfa3f012cd8dbcbef8b2faa2267bdf1e1edc5752 (diff)
downloadsrc-c84843f1e551b25886f7a9201637fac5b001e92a.tar.gz
src-c84843f1e551b25886f7a9201637fac5b001e92a.zip
Since if_cp doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
Notes
Notes: svn path=/head/; revision=133680
Diffstat (limited to 'sys/dev/cp')
-rw-r--r--sys/dev/cp/if_cp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/cp/if_cp.c b/sys/dev/cp/if_cp.c
index 7a54dcf39141..85d18360eff4 100644
--- a/sys/dev/cp/if_cp.c
+++ b/sys/dev/cp/if_cp.c
@@ -508,7 +508,8 @@ static int cp_attach (device_t dev)
d->pp.pp_if.if_name = "cp";
#endif
d->pp.pp_if.if_mtu = PP_MTU;
- d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST;
+ d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST |
+ IFF_NEEDSGIANT;
d->pp.pp_if.if_ioctl = cp_sioctl;
d->pp.pp_if.if_start = cp_ifstart;
d->pp.pp_if.if_watchdog = cp_ifwatchdog;