diff options
Diffstat (limited to 'net/socket.c')
-rw-r--r-- | net/socket.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/socket.c b/net/socket.c index 9ebca5c695d6..7651de008502 100644 --- a/net/socket.c +++ b/net/socket.c | |||
@@ -1365,17 +1365,17 @@ asmlinkage long sys_bind(int fd, struct sockaddr __user *umyaddr, int addrlen) | |||
1365 | * ready for listening. | 1365 | * ready for listening. |
1366 | */ | 1366 | */ |
1367 | 1367 | ||
1368 | int sysctl_somaxconn __read_mostly = SOMAXCONN; | ||
1369 | |||
1370 | asmlinkage long sys_listen(int fd, int backlog) | 1368 | asmlinkage long sys_listen(int fd, int backlog) |
1371 | { | 1369 | { |
1372 | struct socket *sock; | 1370 | struct socket *sock; |
1373 | int err, fput_needed; | 1371 | int err, fput_needed; |
1372 | int somaxconn; | ||
1374 | 1373 | ||
1375 | sock = sockfd_lookup_light(fd, &err, &fput_needed); | 1374 | sock = sockfd_lookup_light(fd, &err, &fput_needed); |
1376 | if (sock) { | 1375 | if (sock) { |
1377 | if ((unsigned)backlog > sysctl_somaxconn) | 1376 | somaxconn = sock->sk->sk_net->sysctl_somaxconn; |
1378 | backlog = sysctl_somaxconn; | 1377 | if ((unsigned)backlog > somaxconn) |
1378 | backlog = somaxconn; | ||
1379 | 1379 | ||
1380 | err = security_socket_listen(sock, backlog); | 1380 | err = security_socket_listen(sock, backlog); |
1381 | if (!err) | 1381 | if (!err) |