From 8347601bcb0a439f6e50fc36b4039a73d08700e1 Mon Sep 17 00:00:00 2001 From: yl150051 Date: Mon, 13 Nov 2006 20:44:19 -0800 Subject: PSARC/2006/190 Large Send Offload (LSO) 6390838 XGE need to support adaptive TX by switching COPY/DMA according to MBLKL(mp) 6394197 Solaris need to support LSO (Large Send Offload) 6466394 Minor logic error in tcp_send_data() 6467558 Need to integrate HAL 2.0.6765 to improve rx performance --- usr/src/uts/common/inet/tcp.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'usr/src/uts/common/inet/tcp.h') diff --git a/usr/src/uts/common/inet/tcp.h b/usr/src/uts/common/inet/tcp.h index 7552e53600..67bf7aa4f2 100644 --- a/usr/src/uts/common/inet/tcp.h +++ b/usr/src/uts/common/inet/tcp.h @@ -112,6 +112,7 @@ typedef struct tcphdr_s { #define TCP_PORT_LEN sizeof (in_port_t) #define TCP_MAX_WINSHIFT 14 #define TCP_MAX_LARGEWIN (TCP_MAXWIN << TCP_MAX_WINSHIFT) +#define TCP_MAX_LSO_LENGTH (IP_MAXPACKET - TCP_MAX_COMBINED_HEADER_LENGTH) #define TCPIP_HDR_LENGTH(mp, n) \ (n) = IPH_HDR_LENGTH((mp)->b_rptr), \ @@ -288,7 +289,8 @@ typedef struct tcp_s { tcp_send_discon_ind : 1, /* TLI accept err, send discon ind */ tcp_cork : 1, /* tcp_cork option */ tcp_tconnind_started : 1, /* conn_ind message is being sent */ - tcp_pad_to_bit_31 : 17; + tcp_lso :1, /* Lower layer is capable of LSO */ + tcp_pad_to_bit_31 : 16; uint32_t tcp_if_mtu; /* Outgoing interface MTU. */ @@ -492,6 +494,8 @@ typedef struct tcp_s { uint_t tcp_mdt_hdr_tail; /* trailing header fragment extra space */ int tcp_mdt_max_pld; /* maximum payload buffers per Multidata */ + uint32_t tcp_lso_max; /* maximum LSO payload */ + uint32_t tcp_ofo_fin_seq; /* Recv out of order FIN seq num */ uint32_t tcp_cwr_snd_max; uint_t tcp_drop_opt_ack_cnt; /* # tcp generated optmgmt */ -- cgit v1.2.3