summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/inet/tcp.h
diff options
context:
space:
mode:
authorKacheong Poon <Kacheong.Poon@Sun.COM>2008-11-05 08:38:41 -0800
committerKacheong Poon <Kacheong.Poon@Sun.COM>2008-11-05 08:38:41 -0800
commitf7f8e53d2c63138c2a1d03ff508ee4e91987d8b9 (patch)
treee3c7886e5ed0ed25773413f4d4b20b43ba6114d8 /usr/src/uts/common/inet/tcp.h
parent798f5c303180c0fc9b5adbaea74f1d1cb8943385 (diff)
downloadillumos-joyent-f7f8e53d2c63138c2a1d03ff508ee4e91987d8b9.tar.gz
6759608 TCP should pre-allocate the T_ordrel_ind mblk
Diffstat (limited to 'usr/src/uts/common/inet/tcp.h')
-rw-r--r--usr/src/uts/common/inet/tcp.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/usr/src/uts/common/inet/tcp.h b/usr/src/uts/common/inet/tcp.h
index 1a45712d2c..d22d2e70e4 100644
--- a/usr/src/uts/common/inet/tcp.h
+++ b/usr/src/uts/common/inet/tcp.h
@@ -247,34 +247,31 @@ typedef struct tcp_s {
tcp_bind_pending : 1, /* Client is waiting for bind ack */
tcp_unbind_pending : 1, /* Client sent T_UNBIND_REQ */
- tcp_deferred_clean_death : 1,
- /* defer tcp endpoint cleanup etc. */
tcp_ka_enabled: 1, /* Connection KeepAlive Timer needed */
-
tcp_zero_win_probe: 1, /* Zero win probing is in progress */
+
tcp_loopback: 1, /* src and dst are the same machine */
tcp_localnet: 1, /* src and dst are on the same subnet */
tcp_syn_defense: 1, /* For defense against SYN attack */
#define tcp_dontdrop tcp_syn_defense
-
tcp_set_timer : 1,
+
tcp_active_open: 1, /* This is a active open */
- tcp_timeout : 1, /* qbufcall failed, qtimeout pending */
tcp_rexmit : 1, /* TCP is retransmitting */
-
tcp_snd_sack_ok : 1, /* Can use SACK for this connection */
tcp_empty_flag : 1, /* Empty flag for future use */
+
tcp_recvdstaddr : 1, /* return T_EXTCONN_IND with dst addr */
tcp_hwcksum : 1, /* The NIC is capable of hwcksum */
-
tcp_ip_forward_progress : 1,
tcp_anon_priv_bind : 1,
+
tcp_ecn_ok : 1, /* Can use ECN for this connection */
tcp_ecn_echo_on : 1, /* Need to do ECN echo */
-
tcp_ecn_cwr_sent : 1, /* ECN_CWR has been sent */
tcp_cwr : 1, /* Cwnd has reduced recently */
- tcp_pad_to_bit31 : 2;
+
+ tcp_pad_to_bit31 : 4;
/* Following manipulated by TCP under squeue protection */
uint32_t
tcp_mdt : 1, /* Lower layer is capable of MDT */
@@ -404,7 +401,7 @@ typedef struct tcp_s {
kmutex_t *tcp_acceptor_lockp; /* Ptr to tf_lock */
- timeout_id_t tcp_ordrelid; /* qbufcall/qtimeout id */
+ mblk_t *tcp_ordrel_mp; /* T_ordrel_ind mblk */
t_uscalar_t tcp_acceptor_id; /* ACCEPTOR_id */
int tcp_ipsec_overhead;
@@ -603,6 +600,11 @@ typedef struct tcp_s {
*/
sodirect_t *tcp_sodirect;
+ /* mblk_t used to enter TCP's squeue from the service routine. */
+ mblk_t *tcp_rsrv_mp;
+ /* Mutex for accessing tcp_rsrv_mp */
+ kmutex_t tcp_rsrv_mp_lock;
+
#ifdef DEBUG
pc_t tcmp_stk[15];
#endif