about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2019-11-29 14:17:15 +0000
committerJoseph Myers <joseph@codesourcery.com>2019-11-29 14:17:15 +0000
commit96958e2700f5b4f4d1183a0606b2b9848a53ea44 (patch)
treea5b2ab875729ccbf923f61a2d554b92231147295
parenta331150af65477fc3fa72ab341eed5e0b2daf7f3 (diff)
downloadglibc-96958e2700f5b4f4d1183a0606b2b9848a53ea44.tar.gz
glibc-96958e2700f5b4f4d1183a0606b2b9848a53ea44.tar.xz
glibc-96958e2700f5b4f4d1183a0606b2b9848a53ea44.zip
Update SOMAXCONN value from Linux 5.4.
Linux 5.4 changes the SOMAXCONN value from 128 to 4096 (this isn't in
a uapi header; various constants related to the kernel/userspace
interface, including this one, are in the non-uapi linux/socket.h
header).

This patch increases the value in glibc.  As I understand it, it is
safe to use a higher value even with older kernels (the kernel will
simply adjust the value passed to listen to be no more than the value
supported in the kernel), and SOMAXCONN is actually only a default for
a sysctl value in the kernel that can be changed at runtime.  So I
think updating the value in glibc is a reasonable and safe thing to
do.

Tested for x86_64.
-rw-r--r--sysdeps/unix/sysv/linux/bits/socket.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/bits/socket.h b/sysdeps/unix/sysv/linux/bits/socket.h
index 3e88d66328..7537a7e86b 100644
--- a/sysdeps/unix/sysv/linux/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/bits/socket.h
@@ -169,7 +169,7 @@ typedef __socklen_t socklen_t;
 #define SOL_XDP		283
 
 /* Maximum queue length specifiable by listen.  */
-#define SOMAXCONN	128
+#define SOMAXCONN	4096
 
 /* Get the definition of the macro to define the common sockaddr members.  */
 #include <bits/sockaddr.h>