freebsd-dev/sys/net
Robert Watson b4f5ef7eac sAdd a comment indicating why there continues to be a race condition in
the tap driver, even with Giant over the cdev operation vector, due to
a non-atomic test-and-set of the si_drv1 field in the dev_t.  This bug
exists with Giant under high memory pressure, as malloc() may sleep
in tapcreate(), but is less likely to occur.  The resolution will
probably be to cover si_drv1 using the global tapmtx since no softc is
available, but I need to think about this problem more generally
across a range of drivers using si_drv1 in combination with SI_CHEAPCLONE
to defer expensive allocation to open().

Correct what appears to be a bug in the original if_tap implementation,
in which tapopen() will panic if a tap device instance is opened more
than once due to an incorrect assertion -- only triggered if INVARIANTS
is compiled in (i.e., when built into a kernel).  Return EBUSY instead.

Expand mtx_lock() coverage using tp->tap_mtx to include tp->ether_addr.
2004-03-18 09:55:11 +00:00
..
bpf_compat.h
bpf_filter.c
bpf.c Grab Giant after MAC processing on outgoing packets being sent via 2004-02-29 15:32:33 +00:00
bpf.h Tweak existing header and other build infrastructure to be able to build 2004-02-26 03:53:54 +00:00
bpfdesc.h Define BPFD_LOCK_ASSERT() to assert the BPF descriptor lock. 2004-02-29 15:33:56 +00:00
bridge.c Re-remove MT_TAGs. The problems with dummynet have been fixed now. 2004-02-25 19:55:29 +00:00
bridge.h
bsd_comp.c
ethernet.h
fddi.h
if_arc.h
if_arcsubr.c
if_arp.h
if_atm.h
if_atmsubr.c
if_disc.c Introduce disc_mtx to protect the global softc list in if_disc. 2004-03-09 16:31:19 +00:00
if_dl.h
if_ef.c
if_ethersubr.c Announce ethernet MAC addresss in ether_ifattach(). 2004-03-14 07:12:25 +00:00
if_faith.c Introduce faith_mtx to protect the if_faith global softc list. 2004-03-09 19:23:06 +00:00
if_fddisubr.c Handle AF_ARP in *_output() 2004-03-14 05:24:54 +00:00
if_gif.c
if_gif.h
if_gre.c
if_gre.h
if_iso88025subr.c Handle AF_ARP in *_output() 2004-03-14 05:24:54 +00:00
if_llc.h
if_loop.c Introduce lo_mtx to protect the global loopback softc list. I'm not 2004-03-09 17:27:48 +00:00
if_media.c
if_media.h
if_mib.c
if_mib.h
if_ppp.c
if_ppp.h
if_pppvar.h
if_sl.c
if_slvar.h
if_sppp.h
if_spppsubr.c Compare spppq to NULL instead of using spppq as a boolean. 2004-03-14 01:32:44 +00:00
if_stf.c Introduce stf_mtx to protect global softc list in if_stf. Add 2004-03-09 20:29:19 +00:00
if_stf.h
if_tap.c sAdd a comment indicating why there continues to be a race condition in 2004-03-18 09:55:11 +00:00
if_tap.h
if_tapvar.h Add tap_mtx to tap_softc in order to protect per-softc variables 2004-03-17 01:09:59 +00:00
if_tun.c Remove tun_proc; replace with tun_pid. tun_proc pointer may be stale 2004-03-17 01:12:09 +00:00
if_tun.h
if_types.h Tweak existing header and other build infrastructure to be able to build 2004-02-26 03:53:54 +00:00
if_var.h Remove if_withname. It came in with the KAME import, but never got 2004-03-13 02:31:40 +00:00
if_vlan_var.h
if_vlan.c
if.c Don't allow interfaces to be renamed to the empty string. 2004-03-13 02:35:03 +00:00
if.h
iso88025.h
net_osdep.c
net_osdep.h
netisr.c
netisr.h
pfil.c
pfil.h
pfkeyv2.h Initial import of RFC 2385 (TCP-MD5) digest support. 2004-02-11 04:26:04 +00:00
ppp_comp.h
ppp_deflate.c
ppp_defs.h
ppp_tty.c
radix.c
radix.h
raw_cb.c
raw_cb.h
raw_usrreq.c Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
route.c
route.h
rtsock.c
slcompress.c
slcompress.h
slip.h
zlib.c
zlib.h