freebsd-nq/sys/net
Robert Watson 24b316d5eb Add per-softc locking to if_tun:
- Add tun_mtx to tun_softc.  Annotate what is (and isn't) locked by it.
- Lock down tun_flags, tun_pid.
- In the output path, cache the value of tun_flags so it's consistent
  when processing a particular packet rather than re-reading the field.
- In general, use unlocked reads for debugging.
- Annotate a couple of places where additional unlocked reads may be
  possible.
- Annotate that tun_pid is used as a bug in tunopen().

if_tun is now largely MPSAFE, although questions remain about some of
the cdevsw fields and how they are synchronized.
2004-03-29 22:16:39 +00:00
..
bpf_compat.h Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
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 Modify BPF descriptor assertions to assert Giant when a BPF descriptor 2004-03-29 00:33:39 +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 Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ethernet.h
fddi.h
if_arc.h - add support for IPX (tested with mount -t nwfs and mars_nwe), 2003-01-24 01:32:20 +00:00
if_arcsubr.c MAC addresses are 8 bits in ARCNET. Adjust bcopy(). 2004-03-22 03:52:51 +00:00
if_arp.h - Use if_broadcastaddr from struct ifnet rather than relying on 2003-03-21 17:53:16 +00:00
if_atm.h Add a device type for virtual interfaces. 2004-01-26 12:13:11 +00:00
if_atmsubr.c Fix a warning when NATM is not defined. In this case s is not used. 2004-01-09 11:25:14 +00:00
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 o eliminate widespread on-stack mbuf use for bpf by introducing 2003-12-28 03:56:00 +00:00
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 Lock down global variables in if_gif: 2004-03-22 15:43:14 +00:00
if_gif.h
if_gre.c Lock down global variables in if_gre: 2004-03-22 16:04:43 +00:00
if_gre.h Lock down global variables in if_gre: 2004-03-22 16:04:43 +00:00
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 Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
if_media.h Add an ATM sub-type for virtual interfaces. 2004-01-26 11:52:32 +00:00
if_mib.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
if_mib.h
if_ppp.c Don't leak softc's when destroying interfaces. 2004-01-21 18:05:38 +00:00
if_ppp.h
if_pppvar.h
if_sl.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
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 Correct a bug introduced with the recent clone API chang: when the clone 2004-03-18 14:18:51 +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 Add per-softc locking to if_tun: 2004-03-29 22:16:39 +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 A network interface driver can support IFCAP_VLAN_MTU only, 2004-01-18 19:29:04 +00:00
if_vlan.c backout the switch to use a zone for vlan tags; this requires 2004-01-03 03:33:39 +00:00
if.c Don't allow interfaces to be renamed to the empty string. 2004-03-13 02:35:03 +00:00
if.h Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
iso88025.h Fix whitespace issues. 2003-03-15 23:55:33 +00:00
net_osdep.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
net_osdep.h - update comments to refrect recent BSDs. 2003-11-04 14:08:31 +00:00
netisr.c o add a flags parameter to netisr_register that is used to specify 2003-11-08 22:28:40 +00:00
netisr.h o add a flags parameter to netisr_register that is used to specify 2003-11-08 22:28:40 +00:00
pfil.c o update PFIL_HOOKS support to current API used by netbsd 2003-09-23 17:54:04 +00:00
pfil.h o update PFIL_HOOKS support to current API used by netbsd 2003-09-23 17:54:04 +00:00
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 Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ppp_defs.h
ppp_tty.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
radix.c While cleaning out my tree, fix another strict alias warning that would 2003-09-22 23:24:18 +00:00
radix.h add R_Zalloc definition that returns pre-zero'd memory 2003-08-19 17:23:07 +00:00
raw_cb.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
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 Remove extraneous unlock. This fixes a panic seen when manipulating static 2004-01-07 23:42:21 +00:00
route.h Introduce tcp_hostcache and remove the tcp specific metrics from 2003-11-20 20:07:39 +00:00
rtsock.c Introduce tcp_hostcache and remove the tcp specific metrics from 2003-11-20 20:07:39 +00:00
slcompress.c Don't use ovbcopy(); use void * instead of char *. 2003-04-04 12:11:46 +00:00
slcompress.h
slip.h
zlib.c chase more of the MIN/MAX mess. *sigh* 2003-02-02 13:52:25 +00:00
zlib.h