neigh: increase queue_len_bytes to match wmem_default
Florian reported UDP xmit drops that could be root caused to the too small neigh limit. Current limit is 64 KB, meaning that even a single UDP socket would hit it, since its default sk_sndbuf comes from net.core.wmem_default (~212992 bytes on 64bit arches). Once ARP/ND resolution is in progress, we should allow a little more packets to be queued, at least for one producer. Once neigh arp_queue is filled, a rogue socket should hit its sk_sndbuf limit and either block in sendmsg() or return -EAGAIN. Signed-off-by: Eric Dumazet <edumazet@google.com> Reported-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
0dd5759dbb
commit
eaa72dc474
@@ -94,7 +94,7 @@ struct neigh_table dn_neigh_table = {
|
||||
[NEIGH_VAR_BASE_REACHABLE_TIME] = 30 * HZ,
|
||||
[NEIGH_VAR_DELAY_PROBE_TIME] = 5 * HZ,
|
||||
[NEIGH_VAR_GC_STALETIME] = 60 * HZ,
|
||||
[NEIGH_VAR_QUEUE_LEN_BYTES] = 64*1024,
|
||||
[NEIGH_VAR_QUEUE_LEN_BYTES] = SK_WMEM_MAX,
|
||||
[NEIGH_VAR_PROXY_QLEN] = 0,
|
||||
[NEIGH_VAR_ANYCAST_DELAY] = 0,
|
||||
[NEIGH_VAR_PROXY_DELAY] = 0,
|
||||
|
Reference in New Issue
Block a user