tcp: Enable 2nd listener hashtable in TCP
authorMartin KaFai Lau <kafai@fb.com>
Fri, 1 Dec 2017 20:52:32 +0000 (12:52 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 3 Dec 2017 15:18:28 +0000 (10:18 -0500)
Enable the second listener hashtable in TCP.
The scale is the same as UDP which is one slot per 2MB.

Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c

index bf97317e6c974285a652664d02e8b2c48a8cfe96..180311636023f912cefa0d7fb05d27422785a930 100644 (file)
@@ -3577,6 +3577,9 @@ void __init tcp_init(void)
        percpu_counter_init(&tcp_sockets_allocated, 0, GFP_KERNEL);
        percpu_counter_init(&tcp_orphan_count, 0, GFP_KERNEL);
        inet_hashinfo_init(&tcp_hashinfo);
+       inet_hashinfo2_init(&tcp_hashinfo, "tcp_listen_portaddr_hash",
+                           thash_entries, 21,  /* one slot per 2 MB*/
+                           0, 64 * 1024);
        tcp_hashinfo.bind_bucket_cachep =
                kmem_cache_create("tcp_bind_bucket",
                                  sizeof(struct inet_bind_bucket), 0,