mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-01 13:57:57 +07:00
tcp: halves tcp_mem[] limits
Allowing tcp to use ~19% of physical memory is way too much, and allowed bugs to be hidden. Add to this that some drivers use a full page per incoming frame, so real cost can be twice the advertized one. Reduce tcp_mem by 50 % as a first step to sanity. tcp_mem[0,1,2] defaults are now 4.68%, 6.25%, 9.37% of physical memory. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
76dfa60820
commit
b66e91ccbc
@ -3068,11 +3068,12 @@ __setup("thash_entries=", set_thash_entries);
|
|||||||
|
|
||||||
static void __init tcp_init_mem(void)
|
static void __init tcp_init_mem(void)
|
||||||
{
|
{
|
||||||
unsigned long limit = nr_free_buffer_pages() / 8;
|
unsigned long limit = nr_free_buffer_pages() / 16;
|
||||||
|
|
||||||
limit = max(limit, 128UL);
|
limit = max(limit, 128UL);
|
||||||
sysctl_tcp_mem[0] = limit / 4 * 3;
|
sysctl_tcp_mem[0] = limit / 4 * 3; /* 4.68 % */
|
||||||
sysctl_tcp_mem[1] = limit;
|
sysctl_tcp_mem[1] = limit; /* 6.25 % */
|
||||||
sysctl_tcp_mem[2] = sysctl_tcp_mem[0] * 2;
|
sysctl_tcp_mem[2] = sysctl_tcp_mem[0] * 2; /* 9.37 % */
|
||||||
}
|
}
|
||||||
|
|
||||||
void __init tcp_init(void)
|
void __init tcp_init(void)
|
||||||
|
Loading…
Reference in New Issue
Block a user