kernel-ark/include/net
Pavel Emelyanov 4665079cbb [NETNS]: Move some code into __init section when CONFIG_NET_NS=n
With the net namespaces many code leaved the __init section,
thus making the kernel occupy more memory than it did before.
Since we have a config option that prohibits the namespace
creation, the functions that initialize/finalize some netns
stuff are simply not needed and can be freed after the boot.

Currently, this is almost not noticeable, since few calls
are no longer in __init, but when the namespaces will be
merged it will be possible to free more code. I propose to
use the __net_init, __net_exit and __net_initdata "attributes"
for functions/variables that are not used if the CONFIG_NET_NS
is not set to save more space in memory.

The exiting functions cannot just reside in the __exit section,
as noticed by David, since the init section will have
references on it and the compilation will fail due to modpost
checks. These references can exist, since the init namespace
never dies and the exit callbacks are never called. So I
introduce the __exit_refok attribute just like it is already
done with the __init_refok.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-10 16:54:58 -07:00
..
9p
bluetooth
irda
iucv [AF_IUCV]: postpone receival of iucv-packets 2007-10-10 16:54:51 -07:00
netfilter [NETFILTER]: nf_conntrack_expect: kill unique ID 2007-10-10 16:53:36 -07:00
sctp [SCTP]: Tie ADD-IP and AUTH functionality as required by spec. 2007-10-10 16:51:33 -07:00
tc_act [PKT_SCHED]: Add stateless NAT 2007-10-10 16:53:11 -07:00
tipc
act_api.h
addrconf.h
af_rxrpc.h
af_unix.h
ah.h [IPSEC] ah: Remove keys from ah_data structure 2007-10-10 16:54:53 -07:00
arp.h
atmclip.h
ax25.h [NET]: Move hardware header operations out of netdevice. 2007-10-10 16:52:52 -07:00
ax88796.h ax88796: add 93cx6 eeprom support 2007-10-10 16:53:56 -07:00
cfg80211.h [NL80211]: add netlink interface to cfg80211 2007-10-10 16:52:14 -07:00
checksum.h
cipso_ipv4.h
compat.h
datalink.h
dn_dev.h
dn_fib.h
dn_neigh.h
dn_nsp.h
dn_route.h [NET]: Wrap netdevice hardware header creation. 2007-10-10 16:52:50 -07:00
dn.h
dsfield.h
dst.h
esp.h [IPSEC] esp: Remove keys from esp_data structure 2007-10-10 16:54:52 -07:00
fib_rules.h [IPV4/IPV6/DECNET]: Small cleanup for fib rules. 2007-10-10 16:51:22 -07:00
flow.h
gen_stats.h
genetlink.h
icmp.h [IPV4]: Add ICMPMsgStats MIB (RFC 4293) 2007-10-10 16:51:28 -07:00
ieee80211_crypt.h
ieee80211_radiotap.h [MAC80211]: Add get_unaligned to ieee80211_get_radiotap_len 2007-10-10 16:47:40 -07:00
ieee80211.h [NET]: Introduce and use print_mac() and DECLARE_MAC_BUF() 2007-10-10 16:51:42 -07:00
ieee80211softmac_wx.h
ieee80211softmac.h [IEEE80211]: Fix softmac lockdep reports. 2007-10-10 16:52:22 -07:00
if_inet6.h [IPV6]: Add ICMPMsgStats MIB (RFC 4293) [rev 2] 2007-10-10 16:51:27 -07:00
inet6_connection_sock.h
inet6_hashtables.h
inet_common.h
inet_connection_sock.h
inet_ecn.h
inet_hashtables.h [NET]: sparse warning fixes 2007-10-10 16:54:48 -07:00
inet_sock.h
inet_timewait_sock.h [NET]: Add a network namespace parameter to struct sock 2007-10-10 16:49:05 -07:00
inetpeer.h
ip6_checksum.h
ip6_fib.h [IPV6] XFRM: Fix connected socket to use transformation. 2007-10-10 16:48:32 -07:00
ip6_route.h
ip6_tunnel.h
ip_fib.h
ip_vs.h
ip.h
ipcomp.h
ipconfig.h
ipip.h
ipv6.h [IPV6]: Add ICMPMsgStats MIB (RFC 4293) [rev 2] 2007-10-10 16:51:27 -07:00
ipx.h
iw_handler.h [NL80211]: add netlink interface to cfg80211 2007-10-10 16:52:14 -07:00
lapb.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h [NET]: Make socket creation namespace safe. 2007-10-10 16:49:07 -07:00
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
llc.h
mac80211.h [MAC80211]: Update beacon_update callback documentation 2007-10-10 16:54:21 -07:00
mip6.h
ndisc.h
neighbour.h
net_namespace.h [NETNS]: Move some code into __init section when CONFIG_NET_NS=n 2007-10-10 16:54:58 -07:00
netdma.h
netevent.h
netlabel.h
netlink.h [NETLINK]: Avoid pointer in netlink_run_queue 2007-10-10 16:51:24 -07:00
netrom.h
nexthop.h
p8022.h
pkt_cls.h [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
pkt_sched.h [NET]: Move hardware header operations out of netdevice. 2007-10-10 16:52:52 -07:00
protocol.h
psnap.h
raw.h
rawv6.h
red.h
request_sock.h
rose.h [ROSE]: Fix rose.ko oops on unload 2007-10-07 23:44:17 -07:00
route.h
rtnetlink.h [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
sch_generic.h [NET_SCHED]: Making rate table lookups more flexible. 2007-10-10 16:49:20 -07:00
scm.h
slhc_vj.h
snmp.h [IPV4]: Add ICMPMsgStats MIB (RFC 4293) 2007-10-10 16:51:28 -07:00
sock.h [NET]: sparse warning fixes 2007-10-10 16:54:48 -07:00
syncppp.h
tcp_states.h
tcp.h [TCP]: Minor coding style fixup. 2007-10-10 16:52:13 -07:00
timewait_sock.h
transp_v6.h
udp.h
udplite.h
veth.h [NET]: Virtual ethernet device driver. 2007-10-10 16:47:46 -07:00
wext.h [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
wireless.h
x25.h
x25device.h
xfrm.h [IPSEC]: Unexport xfrm_replay_notify 2007-10-10 16:54:55 -07:00