[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1538919405-3093-1-git-send-email-laoar.shao@gmail.com>
Date: Sun, 7 Oct 2018 21:36:45 +0800
From: Yafang Shao <laoar.shao@...il.com>
To: edumazet@...gle.com, davem@...emloft.net
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
Yafang Shao <laoar.shao@...il.com>
Subject: [PATCH v2 net-next] inet: do not set backlog if listen fails
We don't need to set the backlog if listen fails.
The sk_max_ack_backlog will be set in the caller inet_listen() and
dccp_listen_start() if inet_csk_listen_start() return without error.
So just remove this line to avoid this unnecessary operation.
Regarding sk_ack_backlog, we have to set it before a TCP/DCCP socket is
ready to accept new flows to avoid race, because dccp and tcp have lockless
listeners
Signed-off-by: Yafang Shao <laoar.shao@...il.com>
---
net/ipv4/inet_connection_sock.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c
index dfd5009..cdd5c95 100644
--- a/net/ipv4/inet_connection_sock.c
+++ b/net/ipv4/inet_connection_sock.c
@@ -871,7 +871,6 @@ int inet_csk_listen_start(struct sock *sk, int backlog)
reqsk_queue_alloc(&icsk->icsk_accept_queue);
- sk->sk_max_ack_backlog = backlog;
sk->sk_ack_backlog = 0;
inet_csk_delack_init(sk);
--
1.8.3.1
Powered by blists - more mailing lists