aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/tcp.h
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@ghostprotocols.net>2005-06-19 01:47:59 -0400
committerDavid S. Miller <davem@davemloft.net>2005-06-19 01:47:59 -0400
commit0e87506fcc734647c7b2497eee4eb81e785c857a (patch)
treebb8863c59fdef2628f17b6773c52801792a57722 /include/linux/tcp.h
parent60236fdd08b2169045a3bbfc5ffe1576e6c3c17b (diff)
[NET] Generalise tcp_listen_opt
This chunks out the accept_queue and tcp_listen_opt code and moves them to net/core/request_sock.c and include/net/request_sock.h, to make it useful for other transport protocols, DCCP being the first one to use it. Next patches will rename tcp_listen_opt to accept_sock and remove the inline tcp functions that just call a reqsk_queue_ function. Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/tcp.h')
-rw-r--r--include/linux/tcp.h17
1 files changed, 1 insertions, 16 deletions
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
index fb54292a15aa..97a7c9e03df5 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
@@ -379,22 +379,7 @@ struct tcp_sock {
379 379
380 __u32 total_retrans; /* Total retransmits for entire connection */ 380 __u32 total_retrans; /* Total retransmits for entire connection */
381 381
382 /* The syn_wait_lock is necessary only to avoid proc interface having 382 struct request_sock_queue accept_queue; /* FIFO of established children */
383 * to grab the main lock sock while browsing the listening hash
384 * (otherwise it's deadlock prone).
385 * This lock is acquired in read mode only from listening_get_next()
386 * and it's acquired in write mode _only_ from code that is actively
387 * changing the syn_wait_queue. All readers that are holding
388 * the master sock lock don't need to grab this lock in read mode
389 * too as the syn_wait_queue writes are always protected from
390 * the main sock lock.
391 */
392 rwlock_t syn_wait_lock;
393 struct tcp_listen_opt *listen_opt;
394
395 /* FIFO of established children */
396 struct request_sock *accept_queue;
397 struct request_sock *accept_queue_tail;
398 383
399 unsigned int keepalive_time; /* time before keep alive takes place */ 384 unsigned int keepalive_time; /* time before keep alive takes place */
400 unsigned int keepalive_intvl; /* time interval between keep alive probes */ 385 unsigned int keepalive_intvl; /* time interval between keep alive probes */