aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp.c
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2012-11-30 05:08:52 -0500
committerDavid S. Miller <davem@davemloft.net>2012-12-01 11:36:37 -0500
commitfd90b29d757827ab12d6669292612308ec249532 (patch)
treeba0a7cbd8520e3e7d4a45ff91e9e1b5ea4850810 /net/ipv4/tcp.c
parentabe303dbc22bd16cde6f1a62fc25f63cc254caf7 (diff)
tcp: change default tcp hash size
As time passed, available memory increased faster than number of concurrent tcp sockets. As a result, a machine with 4GB of ram gets a hash table with 524288 slots, using 8388608 bytes of memory. Lets change that by a 16x factor (one slot for 128 KB of ram) Even if a small machine needs a _lot_ of sockets, tcp lookups are now very efficient, using one cache line per socket. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp.c')
-rw-r--r--net/ipv4/tcp.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index e6eace1c2bdb..1aca02c9911e 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -3590,8 +3590,7 @@ void __init tcp_init(void)
3590 alloc_large_system_hash("TCP established", 3590 alloc_large_system_hash("TCP established",
3591 sizeof(struct inet_ehash_bucket), 3591 sizeof(struct inet_ehash_bucket),
3592 thash_entries, 3592 thash_entries,
3593 (totalram_pages >= 128 * 1024) ? 3593 17, /* one slot per 128 KB of memory */
3594 13 : 15,
3595 0, 3594 0,
3596 NULL, 3595 NULL,
3597 &tcp_hashinfo.ehash_mask, 3596 &tcp_hashinfo.ehash_mask,
@@ -3607,8 +3606,7 @@ void __init tcp_init(void)
3607 alloc_large_system_hash("TCP bind", 3606 alloc_large_system_hash("TCP bind",
3608 sizeof(struct inet_bind_hashbucket), 3607 sizeof(struct inet_bind_hashbucket),
3609 tcp_hashinfo.ehash_mask + 1, 3608 tcp_hashinfo.ehash_mask + 1,
3610 (totalram_pages >= 128 * 1024) ? 3609 17, /* one slot per 128 KB of memory */
3611 13 : 15,
3612 0, 3610 0,
3613 &tcp_hashinfo.bhash_size, 3611 &tcp_hashinfo.bhash_size,
3614 NULL, 3612 NULL,