<div dir="ltr">When learning TCP three way handshake, I learn that TCP has a syn queue for those connections that haven't been established, and an accept queue for those who have been established. But I can only find one queue named <b>icsk_accept_queue</b> in  <b>inet_connection_sock </b>struct, and I find that when the function <b>tcp_conn_request() </b>is called, the connection in the queue will be removed. But I haven't seen the connection being added to another queue. The accept() just return this connection. So I'm really confused.<div><br></div><div>- Why is there only one queue <b>icsk_accept_queue?</b></div><div><b><br></b><div>- Is  <b>icsk_accept_queue </b>the syn queue? </div></div><div><br></div><div>- If it is, then where is the accept queue?</div><div><br></div><div>Thanks for reading, hope for any possible help.</div></div>