diff options
author | Kacheong Poon <Kacheong.Poon@Sun.COM> | 2008-11-05 08:38:41 -0800 |
---|---|---|
committer | Kacheong Poon <Kacheong.Poon@Sun.COM> | 2008-11-05 08:38:41 -0800 |
commit | f7f8e53d2c63138c2a1d03ff508ee4e91987d8b9 (patch) | |
tree | e3c7886e5ed0ed25773413f4d4b20b43ba6114d8 /usr/src/uts/common/inet/tcp.h | |
parent | 798f5c303180c0fc9b5adbaea74f1d1cb8943385 (diff) | |
download | illumos-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.h | 22 |
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 |