mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
tcp: Namespace-ify sysctl_tcp_rmem and sysctl_tcp_wmem
Note that when a new netns is created, it inherits its sysctl_tcp_rmem and sysctl_tcp_wmem from initial netns. This change is needed so that we can refine TCP rcvbuf autotuning, to take RTT into consideration. Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Wei Wang <weiwan@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a3dcaf17ee
commit
356d1833b6
8 changed files with 47 additions and 43 deletions
|
@ -289,12 +289,7 @@ struct percpu_counter tcp_orphan_count;
|
|||
EXPORT_SYMBOL_GPL(tcp_orphan_count);
|
||||
|
||||
long sysctl_tcp_mem[3] __read_mostly;
|
||||
int sysctl_tcp_wmem[3] __read_mostly;
|
||||
int sysctl_tcp_rmem[3] __read_mostly;
|
||||
|
||||
EXPORT_SYMBOL(sysctl_tcp_mem);
|
||||
EXPORT_SYMBOL(sysctl_tcp_rmem);
|
||||
EXPORT_SYMBOL(sysctl_tcp_wmem);
|
||||
|
||||
atomic_long_t tcp_memory_allocated; /* Current allocated memory. */
|
||||
EXPORT_SYMBOL(tcp_memory_allocated);
|
||||
|
@ -456,8 +451,8 @@ void tcp_init_sock(struct sock *sk)
|
|||
|
||||
icsk->icsk_sync_mss = tcp_sync_mss;
|
||||
|
||||
sk->sk_sndbuf = sysctl_tcp_wmem[1];
|
||||
sk->sk_rcvbuf = sysctl_tcp_rmem[1];
|
||||
sk->sk_sndbuf = sock_net(sk)->ipv4.sysctl_tcp_wmem[1];
|
||||
sk->sk_rcvbuf = sock_net(sk)->ipv4.sysctl_tcp_rmem[1];
|
||||
|
||||
sk_sockets_allocated_inc(sk);
|
||||
}
|
||||
|
@ -3636,13 +3631,13 @@ void __init tcp_init(void)
|
|||
max_wshare = min(4UL*1024*1024, limit);
|
||||
max_rshare = min(6UL*1024*1024, limit);
|
||||
|
||||
sysctl_tcp_wmem[0] = SK_MEM_QUANTUM;
|
||||
sysctl_tcp_wmem[1] = 16*1024;
|
||||
sysctl_tcp_wmem[2] = max(64*1024, max_wshare);
|
||||
init_net.ipv4.sysctl_tcp_wmem[0] = SK_MEM_QUANTUM;
|
||||
init_net.ipv4.sysctl_tcp_wmem[1] = 16*1024;
|
||||
init_net.ipv4.sysctl_tcp_wmem[2] = max(64*1024, max_wshare);
|
||||
|
||||
sysctl_tcp_rmem[0] = SK_MEM_QUANTUM;
|
||||
sysctl_tcp_rmem[1] = 87380;
|
||||
sysctl_tcp_rmem[2] = max(87380, max_rshare);
|
||||
init_net.ipv4.sysctl_tcp_rmem[0] = SK_MEM_QUANTUM;
|
||||
init_net.ipv4.sysctl_tcp_rmem[1] = 87380;
|
||||
init_net.ipv4.sysctl_tcp_rmem[2] = max(87380, max_rshare);
|
||||
|
||||
pr_info("Hash tables configured (established %u bind %u)\n",
|
||||
tcp_hashinfo.ehash_mask + 1, tcp_hashinfo.bhash_size);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue