diff options
author | rwatson <rwatson@FreeBSD.org> | 2004-08-13 23:02:17 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2004-08-13 23:02:17 +0000 |
commit | 0564d2c810d6d4d45b5556efa8e250b7f57e7f5a (patch) | |
tree | 9e1f3b3670049ca726ac73c894edc7cd12455bf1 /sys | |
parent | a202a0747221a9dab936429aac866b0a5cfd76f4 (diff) | |
download | FreeBSD-src-0564d2c810d6d4d45b5556efa8e250b7f57e7f5a.zip FreeBSD-src-0564d2c810d6d4d45b5556efa8e250b7f57e7f5a.tar.gz |
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.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/cp/if_cp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/cp/if_cp.c b/sys/dev/cp/if_cp.c index 7a54dcf..85d1836 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; |