kernel-hacking-2024-linux-s.../net/ipv4
Harald Welte 188bab3ae0 [NETFILTER]: Fix invalid module autoloading by splitting iptable_nat
When you've enabled conntrack and NAT as a module (standard case in all
distributions), and you've also enabled the new conntrack netlink
interface, loading ip_conntrack_netlink.ko will auto-load iptable_nat.ko.
This causes a huge performance penalty, since for every packet you iterate
the nat code, even if you don't want it.

This patch splits iptable_nat.ko into the NAT core (ip_nat.ko) and the
iptables frontend (iptable_nat.ko).  Threfore, ip_conntrack_netlink.ko will
only pull ip_nat.ko, but not the frontend.  ip_nat.ko will "only" allocate
some resources, but not affect runtime performance.

This separation is also a nice step in anticipation of new packet filters
(nf-hipac, ipset, pkttables) being able to use the NAT core.

Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-09-26 15:25:11 -07:00
..
ipvs [IPVS]: ip_vs_ftp breaks connections using persistence 2005-09-14 21:08:51 -07:00
netfilter [NETFILTER]: Fix invalid module autoloading by splitting iptable_nat 2005-09-26 15:25:11 -07:00
af_inet.c
ah4.c
arp.c
datagram.c
devinet.c
esp4.c
fib_frontend.c
fib_hash.c
fib_lookup.h
fib_rules.c
fib_semantics.c
fib_trie.c [FIB_TRIE]: message cleanup 2005-09-21 00:15:39 -07:00
icmp.c
igmp.c [MCAST]: Fix MCAST_EXCLUDE line dupes 2005-09-14 20:53:42 -07:00
inet_connection_sock.c
inet_diag.c
inet_hashtables.c
inet_timewait_sock.c
inetpeer.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
ip_forward.c
ip_fragment.c
ip_gre.c
ip_input.c
ip_options.c
ip_output.c
ip_sockglue.c
ipcomp.c
ipconfig.c [NET]: fix-up schedule_timeout() usage 2005-09-12 14:15:34 -07:00
ipip.c
ipmr.c
Kconfig
Makefile
multipath.c
multipath_drr.c
multipath_random.c
multipath_rr.c
multipath_wrandom.c
netfilter.c
proc.c
protocol.c
raw.c [PATCH] raw_sendmsg DoS on 2.6 2005-09-19 18:45:42 -07:00
route.c
syncookies.c
sysctl_net_ipv4.c
tcp.c
tcp_bic.c
tcp_cong.c
tcp_diag.c
tcp_highspeed.c
tcp_htcp.c
tcp_hybla.c
tcp_input.c [TCP]: Compute in_sacked properly when we split up a TSO frame. 2005-09-14 20:50:35 -07:00
tcp_ipv4.c
tcp_minisocks.c [TCP]: Set default congestion control correctly for incoming connections. 2005-09-21 00:19:46 -07:00
tcp_output.c [TCP]: Adjust Reno SACK estimate in tcp_fragment 2005-09-22 23:32:56 -07:00
tcp_scalable.c
tcp_timer.c
tcp_vegas.c
tcp_westwood.c
udp.c
xfrm4_input.c
xfrm4_output.c
xfrm4_policy.c
xfrm4_state.c
xfrm4_tunnel.c