kernel-ark/net/ipv4
Kirill Korotaev 8d1502de27 [IPV4]: Limit rt cache size properly.
From: Kirill Korotaev <dev@sw.ru>

During OpenVZ stress testing we found that UDP traffic with random src
can generate too much excessive rt hash growing leading finally to OOM
and kernel panics.

It was found that for 4GB i686 system (having 1048576 total pages and
  225280 normal zone pages) kernel allocates the following route hash:
syslog: IP route cache hash table entries: 262144 (order: 8, 1048576
bytes) => ip_rt_max_size = 4194304 entries, i.e.  max rt size is
4194304 * 256b = 1Gb of RAM > normal_zone

Attached the patch which removes HASH_HIGHMEM flag from
alloc_large_system_hash() call.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-07 20:44:22 -07:00
..
ipvs [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
netfilter [NETFILTER]: xt_hashlimit/xt_string: missing string validation 2006-08-02 13:38:29 -07:00
af_inet.c [NET] gso: Fix up GSO packets with broken checksums 2006-07-08 13:34:56 -07:00
ah4.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
arp.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
datagram.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
devinet.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
esp4.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
fib_frontend.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
fib_hash.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
fib_lookup.h
fib_rules.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
fib_semantics.c [IPV4]: Fix nexthop realm dumping for multipath routes 2006-07-21 15:09:55 -07:00
fib_trie.c [IPV4]: Fix error handling for fib_insert_node call 2006-07-12 13:59:04 -07:00
icmp.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
igmp.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
inet_connection_sock.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
inet_diag.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
inet_hashtables.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
inet_timewait_sock.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
inetpeer.c [IPV4] inetpeer: Get rid of volatile from peer_total 2006-07-10 14:50:30 -07:00
ip_forward.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ip_fragment.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ip_gre.c [IPV4]: Get rid of redundant IPCB->opts initialisation 2006-07-21 14:29:53 -07:00
ip_input.c [IPV4]: Clear the whole IPCB, this clears also IPCB(skb)->flags. 2006-07-24 23:45:16 -07:00
ip_options.c [IPV4]: Get rid of redundant IPCB->opts initialisation 2006-07-21 14:29:53 -07:00
ip_output.c [IPV6]: SNMPv2 "ipv6IfStatsOutFragCreates" counter error 2006-08-02 13:41:21 -07:00
ip_sockglue.c [AF_UNIX]: Kernel memory leak fix for af_unix datagram getpeersec patch 2006-08-02 14:12:06 -07:00
ipcomp.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
ipconfig.c
ipip.c [IPV4]: Get rid of redundant IPCB->opts initialisation 2006-07-21 14:29:53 -07:00
ipmr.c [IPV4] ipmr: ip multicast route bug fix. 2006-07-25 16:45:12 -07:00
Kconfig [TCP]: Remove TCP Compound 2006-07-10 14:50:35 -07:00
Makefile [TCP]: Remove TCP Compound 2006-07-10 14:50:35 -07:00
multipath_drr.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
multipath_random.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
multipath_rr.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
multipath_wrandom.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
multipath.c
netfilter.c [NETFILTER]: Add address family specific checksum helpers 2006-04-09 22:25:41 -07:00
proc.c [PATCH] for_each_possible_cpu: network codes 2006-04-11 06:18:31 -07:00
protocol.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
raw.c [IPV4/IPV6]: Setting 0 for unused port field in RAW IP recvmsg(). 2006-07-25 17:05:35 -07:00
route.c [IPV4]: Limit rt cache size properly. 2006-08-07 20:44:22 -07:00
syncookies.c
sysctl_net_ipv4.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_bic.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_cong.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_cubic.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_diag.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_highspeed.c [TCP] tcp_highspeed: Fix AI updates. 2006-07-12 13:58:50 -07:00
tcp_htcp.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_hybla.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_input.c [TCP]: Fixes IW > 2 cases when TCP is application limited 2006-08-04 22:59:52 -07:00
tcp_ipv4.c [TCP]: SNMPv2 tcpAttemptFails counter error 2006-08-02 13:38:19 -07:00
tcp_lp.c [TCP]: TCP Low Priority congestion control 2006-06-17 21:29:21 -07:00
tcp_minisocks.c [TCP]: SNMPv2 tcpAttemptFails counter error 2006-08-02 13:38:19 -07:00
tcp_output.c [NET]: Generalise TSO-specific bits from skb_setup_caps 2006-06-30 14:12:08 -07:00
tcp_probe.c [TCP]: fix memory leak in net/ipv4/tcp_probe.c::tcpprobe_read() 2006-08-02 13:38:18 -07:00
tcp_scalable.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_timer.c
tcp_vegas.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_veno.c [TCP]: Minimum congestion window consolidation. 2006-06-17 21:29:29 -07:00
tcp_westwood.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp.c [NET]: Fix more per-cpu typos 2006-08-02 15:02:31 -07:00
tunnel4.c [INET]: Move no-tunnel ICMP error to tunnel4/tunnel6 2006-04-09 22:25:25 -07:00
udp.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
xfrm4_input.c [IPSEC] xfrm: Abstract out encapsulation modes 2006-06-17 21:28:39 -07:00
xfrm4_mode_transport.c [IPSEC] proto: Move transport mode input path into xfrm_mode_transport 2006-06-17 21:28:41 -07:00
xfrm4_mode_tunnel.c [IPV4]: Get rid of redundant IPCB->opts initialisation 2006-07-21 14:29:53 -07:00
xfrm4_output.c [NET] gso: Add skb_is_gso 2006-07-08 13:34:32 -07:00
xfrm4_policy.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
xfrm4_state.c [IPSEC] xfrm: Undo afinfo lock proliferation 2006-06-17 21:28:37 -07:00
xfrm4_tunnel.c [IPSEC]: Kill unused decap state argument 2006-04-01 00:52:46 -08:00