freebsd-dev/sys/net
Marko Zec 1ed81b739e First pass at separating per-vnet initializer functions
from existing functions for initializing global state.

        At this stage, the new per-vnet initializer functions are
	directly called from the existing global initialization code,
	which should in most cases result in compiler inlining those
	new functions, hence yielding a near-zero functional change.

        Modify the existing initializer functions which are invoked via
        protosw, like ip_init() et. al., to allow them to be invoked
	multiple times, i.e. per each vnet.  Global state, if any,
	is initialized only if such functions are called within the
	context of vnet0, which will be determined via the
	IS_DEFAULT_VNET(curvnet) check (currently always true).

        While here, V_irtualize a few remaining global UMA zones
        used by net/netinet/netipsec networking code.  While it is
        not yet clear to me or anybody else whether this is the right
        thing to do, at this stage this makes the code more readable,
        and makes it easier to track uncollected UMA-zone-backed
        objects on vnet removal.  In the long run, it's quite possible
        that some form of shared use of UMA zone pools among multiple
        vnets should be considered.

	Bump __FreeBSD_version due to changes in layout of structs
	vnet_ipfw, vnet_inet and vnet_net.

Approved by:	julian (mentor)
2009-04-06 22:29:41 +00:00
..
bpf_buffer.c Fill in BPF sysctl descriptions. 2008-07-25 23:58:09 +00:00
bpf_buffer.h Introduce support for zero-copy BPF buffering, which reduces the 2008-03-24 13:49:17 +00:00
bpf_filter.c Fix the last missing parentheses for a return statement in bpf_filter.c. 2008-08-29 20:00:55 +00:00
bpf_jitter.c Initialize scratch memory for JIT-compiled filter when it is allocated. 2008-08-28 16:40:51 +00:00
bpf_jitter.h Fix a typo in copyrights. 2008-08-25 20:43:13 +00:00
bpf_zerocopy.c Clarify some comments, fix some types, and rename ZBUF_FLAG_IMMUTABLE to 2009-03-07 10:21:37 +00:00
bpf_zerocopy.h Make sure we are clearing the ZBUF_FLAG_IMMUTABLE any time a free buffer 2008-07-05 20:11:28 +00:00
bpf.c Disable zerocopy by default for now. It's causing some problems in pcap 2009-03-10 14:28:19 +00:00
bpf.h Sync DLTs with latest libpcap version. 2009-04-02 13:02:12 +00:00
bpfdesc.h Remove trailing ';' in BPFD_LOCK_ASSERT macro. 2008-08-01 22:08:14 +00:00
bridgestp.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
bridgestp.h Fix spelling. 2007-12-09 20:47:12 +00:00
ethernet.h Move CTASSERT of ether header sizes out of the header file and into 2008-08-27 17:10:37 +00:00
fddi.h
firewire.h
ieee8023ad_lacp.c Update the interface baudrate taking into account the max speed for the 2008-12-17 20:58:10 +00:00
ieee8023ad_lacp.h Remove extra semicolons. 2008-03-17 01:26:44 +00:00
if_arc.h
if_arcsubr.c Remove the rt argument from nd6_storelladdr() because 2008-12-17 10:27:34 +00:00
if_arp.h
if_atm.h
if_atmsubr.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
if_bridge.c Remove IFF_NEEDSGIANT, a compatibility infrastructure introduced 2009-03-15 14:21:05 +00:00
if_bridgevar.h Add an option to limit the number of source MACs that can be behind a bridge 2007-11-04 08:32:27 +00:00
if_clone.c Fix clone destruction, can't use the simple api because that does not remove 2008-09-20 19:38:37 +00:00
if_clone.h Fix clone destruction, can't use the simple api because that does not remove 2008-09-20 19:38:37 +00:00
if_disc.c Add a comment explaining why disc(4) bears the IFF_LOOPBACK flag. 2007-10-27 19:57:41 +00:00
if_dl.h
if_edsc.c Give a hint that softc can contain many things besides ifp. 2007-03-26 09:05:10 +00:00
if_ef.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
if_enc.c Increase statistic counters for enc0 interface when enabled 2008-08-12 09:05:01 +00:00
if_enc.h Increase statistic counters for enc0 interface when enabled 2008-08-12 09:05:01 +00:00
if_ethersubr.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
if_faith.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
if_fddisubr.c Remove the rt argument from nd6_storelladdr() because 2008-12-17 10:27:34 +00:00
if_fwsubr.c Remove the rt argument from nd6_storelladdr() because 2008-12-17 10:27:34 +00:00
if_gif.c First pass at separating per-vnet initializer functions 2009-04-06 22:29:41 +00:00
if_gif.h On architectures with strict alignment requirements compensate 2009-03-07 19:08:58 +00:00
if_gre.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
if_gre.h Add support for the optional key in the GRE header. 2008-06-20 17:26:34 +00:00
if_iso88025subr.c Remove the rt argument from nd6_storelladdr() because 2008-12-17 10:27:34 +00:00
if_lagg.c - Protect against sc->sc_primary being null 2008-12-17 21:04:43 +00:00
if_lagg.h Fix two panics in lagg. 2007-10-12 03:03:16 +00:00
if_llatbl.c Like with r185713 make sure to not leak a lock as rtalloc1(9) returns 2009-01-31 10:48:02 +00:00
if_llatbl.h add macro for destroying an llentry's rwlock 2008-12-16 00:20:15 +00:00
if_llc.h
if_loop.c First pass at separating per-vnet initializer functions 2009-04-06 22:29:41 +00:00
if_media.c
if_media.h Add TWINAX (Twin Axial Copper for 10G networking) media types. 2008-12-17 22:59:29 +00:00
if_mib.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
if_mib.h
if_sppp.h
if_spppfr.c
if_spppsubr.c IFF_NEEDSGIANT will no longer be supported, so remove compatibility code 2009-02-16 10:29:03 +00:00
if_stf.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
if_stf.h
if_tap.c Remove the splimp()/splx() calls around the setting of the MTU. They are 2009-03-17 02:32:36 +00:00
if_tap.h Add new TAPGIFNAME tap(4) character device ioctl. This is a 2008-09-08 22:43:55 +00:00
if_tapvar.h
if_tun.c The "tun?" dev need not be opened at all. One is allowed to perform 2008-12-25 22:32:32 +00:00
if_tun.h
if_types.h Remove IPX over IP tunneling support, which allows IPX routing over IP 2007-06-13 14:01:43 +00:00
if_var.h Remove IFF_NEEDSGIANT, a compatibility infrastructure introduced 2009-03-15 14:21:05 +00:00
if_vlan_var.h
if_vlan.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
if.c First pass at separating per-vnet initializer functions 2009-04-06 22:29:41 +00:00
if.h remove unnecessary forward declaration 2009-02-16 15:09:37 +00:00
iso88025.h
netisr.c Remove NETISR_MPSAFE, which allows specific netisr handlers to be directly 2008-07-04 00:21:38 +00:00
netisr.h Reserve a netisr slot for the IGMPv3 output queue. 2009-03-04 02:54:11 +00:00
pfil.c A few locking fixes and cleanups to pfil hook registration, 2008-12-16 17:03:22 +00:00
pfil.h Line wrap very long line in struct packet_filter_hook definition. 2008-12-13 12:03:21 +00:00
pfkeyv2.h Commit the change from FAST_IPSEC to IPSEC. The FAST_IPSEC 2007-07-03 12:13:45 +00:00
ppp_defs.h
radix_mpath.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
radix_mpath.h When RADIX_MPATH is enabled, the route selection is not rotating 2008-05-30 09:34:35 +00:00
radix.c remove assertion checks for now - ipfw uses its own lock for protecting its radix tree instance 2008-12-16 11:01:36 +00:00
radix.h - convert radix node head lock from mutex to rwlock 2008-12-07 21:15:43 +00:00
raw_cb.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
raw_cb.h Put a global variables, which were virtualized but formerly 2008-12-11 16:26:38 +00:00
raw_usrreq.c For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
route.c First pass at separating per-vnet initializer functions 2009-04-06 22:29:41 +00:00
route.h Revive the RTF_LLINFO flag in route.h. The kernel code is guarded 2009-01-12 11:24:32 +00:00
rtsock.c Call prison_if from rtm_get_jailed, instead of splitting it out into 2009-02-05 14:58:16 +00:00
slcompress.c
slcompress.h
vnet.h First pass at separating per-vnet initializer functions 2009-04-06 22:29:41 +00:00
zlib.c
zlib.h