freebsd-skq/sys/net
glebius 19f8b36e66 Merge the //depot/user/yar/vlan branch into CVS. It contains some collective
work by yar, thompsa and myself. The checksum offloading part also involves
work done by Mihail Balikov.

The most important changes:

o   Instead of global linked list of all vlan softc use a per-trunk
  hash. The size of hash is dynamically adjusted, depending on
  number of entries. This changes struct ifnet, replacing counter
  of vlans with a pointer to trunk structure. This change is an
  improvement for setups with big number of VLANs, several interfaces
  and several CPUs. It is a small regression for a setup with a single
  VLAN interface.
    An alternative to dynamic hash is a per-trunk static array with
  4096 entries, which is a compile time option - VLAN_ARRAY. In my
  experiments the array is not an improvement, probably because such
  a big trunk structure doesn't fit into CPU cache.
o   Introduce an UMA zone for VLAN tags. Since drivers depend on it,
  the zone is declared in kern_mbuf.c, not in optional vlan(4) driver.
  This change is a big improvement for any setup utilizing vlan(4).
o   Use rwlock(9) instead of mutex(9) for locking. We are the first
  ones to do this! :)
o   Some drivers can do hardware VLAN tagging + hardware checksum
  offloading. Add an infrastructure for this. Whenever vlan(4) is
  attached to a parent or parent configuration is changed, the flags
  on vlan(4) interface are updated.

In collaboration with:	yar, thompsa
In collaboration with:	Mihail Balikov <mihail.balikov interbgc.com>
2006-01-30 13:45:15 +00:00
..
bpf_compat.h
bpf_filter.c Correctly check the filter length. I committed the wrong version. 2006-01-03 20:34:41 +00:00
bpf_jitter.c Add BPF Just-In-Time compiler support for ng_bpf(4). 2005-12-07 21:30:47 +00:00
bpf_jitter.h Add BPF Just-In-Time compiler support for ng_bpf(4). 2005-12-07 21:30:47 +00:00
bpf.c Add BPF Just-In-Time compiler support for ng_bpf(4). 2005-12-07 21:30:47 +00:00
bpf.h
bpfdesc.h Add experimental BPF Just-In-Time compiler for amd64 and i386. 2005-12-06 02:58:12 +00:00
bridgestp.c Minor whitespace cleanup. 2005-12-17 10:03:48 +00:00
bsd_comp.c
ethernet.h
fddi.h - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than another 2005-11-11 07:36:14 +00:00
firewire.h
if_arc.h
if_arcsubr.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_arp.h - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
if_atm.h
if_atmsubr.c
if_bridge.c Make sure buffers in if_bridge are fully initialized before copying 2006-01-25 10:00:40 +00:00
if_bridgevar.h Add code that clears certain capabilities from the member interface, these are 2006-01-14 03:51:31 +00:00
if_clone.c Fix the following bugs: 2005-11-24 18:56:14 +00:00
if_clone.h Move the cloned interface list management in to if_clone. For some drivers the 2005-11-08 20:08:34 +00:00
if_disc.c Force this interface to be RUNNING. 2005-11-11 11:17:57 +00:00
if_dl.h
if_ef.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_ethersubr.c Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
if_faith.c Move the cloned interface list management in to if_clone. For some drivers the 2005-11-08 20:08:34 +00:00
if_fddisubr.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_fwsubr.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_gif.c Add some initial locking to gif(4). It doesn't covers the whole driver, 2006-01-30 08:39:09 +00:00
if_gif.h Add some initial locking to gif(4). It doesn't covers the whole driver, 2006-01-30 08:39:09 +00:00
if_gre.c Fix stack corruptions on amd64. 2006-01-21 10:44:34 +00:00
if_gre.h
if_iso88025subr.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_llc.h
if_loop.c
if_media.c add a sysctl to turn debug msgs on/off when built with IFMEDIA_DEBUG 2005-12-25 23:28:23 +00:00
if_media.h
if_mib.c Add a new leaf to the net.link.generic.ifdata.%d sysctl to retrieve 2006-01-04 12:57:09 +00:00
if_mib.h Add a new leaf to the net.link.generic.ifdata.%d sysctl to retrieve 2006-01-04 12:57:09 +00:00
if_ppp.c Return mbuf pointer or NULL from ip_fastforward() as the mbuf pointer 2006-01-18 14:24:39 +00:00
if_ppp.h
if_pppvar.h
if_sl.c Use new (inline) functions for calls into driver. 2005-10-16 20:44:18 +00:00
if_slvar.h
if_sppp.h
if_spppfr.c
if_spppsubr.c Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
if_stf.c Use sparse initializers for "struct domain" and "struct protosw", 2005-11-09 13:29:16 +00:00
if_stf.h
if_tap.c - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
if_tap.h
if_tapvar.h
if_tun.c
if_tun.h
if_types.h
if_var.h Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
if_vlan_var.h Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
if_vlan.c Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
if.c Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
if.h Merge the //depot/user/yar/vlan branch into CVS. It contains some collective 2006-01-30 13:45:15 +00:00
iso88025.h - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than another 2005-11-11 07:36:14 +00:00
net_osdep.h
netisr.c - Don't pollute opt_global.h with DEVICE_POLLING and introduce 2005-10-05 10:09:17 +00:00
netisr.h
pfil.c
pfil.h
pfkeyv2.h
ppp_comp.h
ppp_deflate.c
ppp_defs.h
ppp_tty.c Use new (inline) functions for calls into driver. 2005-10-16 20:44:18 +00:00
radix.c
radix.h
raw_cb.c
raw_cb.h
raw_usrreq.c
route.c - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
route.h Remove bogous semicolons at the end of the definitions of 2005-09-14 14:57:04 +00:00
rtsock.c - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
slcompress.c
slcompress.h
slip.h
zlib.c Forward declare z_errmsg with static linkage since it is defined 2005-09-11 16:13:02 +00:00
zlib.h