diff options
Diffstat (limited to 'include/linux/tcp.h')
| -rw-r--r-- | include/linux/tcp.h | 14 | 
1 files changed, 13 insertions, 1 deletions
| diff --git a/include/linux/tcp.h b/include/linux/tcp.h index b386361ba3e8..7be9b1242354 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h @@ -29,9 +29,14 @@ static inline struct tcphdr *tcp_hdr(const struct sk_buff *skb)  	return (struct tcphdr *)skb_transport_header(skb);  } +static inline unsigned int __tcp_hdrlen(const struct tcphdr *th) +{ +	return th->doff * 4; +} +  static inline unsigned int tcp_hdrlen(const struct sk_buff *skb)  { -	return tcp_hdr(skb)->doff * 4; +	return __tcp_hdrlen(tcp_hdr(skb));  }  static inline struct tcphdr *inner_tcp_hdr(const struct sk_buff *skb) @@ -153,6 +158,9 @@ struct tcp_sock {  	u32	segs_in;	/* RFC4898 tcpEStatsPerfSegsIn  				 * total number of segments in.  				 */ +	u32	data_segs_in;	/* RFC4898 tcpEStatsPerfDataSegsIn +				 * total number of data segments in. +				 */   	u32	rcv_nxt;	/* What we want to receive next 	*/  	u32	copied_seq;	/* Head of yet unread data		*/  	u32	rcv_wup;	/* rcv_nxt on last window update sent	*/ @@ -160,6 +168,9 @@ struct tcp_sock {  	u32	segs_out;	/* RFC4898 tcpEStatsPerfSegsOut  				 * The total number of segments sent.  				 */ +	u32	data_segs_out;	/* RFC4898 tcpEStatsPerfDataSegsOut +				 * total number of data segments sent. +				 */  	u64	bytes_acked;	/* RFC4898 tcpEStatsAppHCThruOctetsAcked  				 * sum(delta(snd_una)), or how many bytes  				 * were acked. @@ -256,6 +267,7 @@ struct tcp_sock {  	u32	prr_delivered;	/* Number of newly delivered packets to  				 * receiver in Recovery. */  	u32	prr_out;	/* Total number of pkts sent during Recovery. */ +	u32	delivered;	/* Total data packets delivered incl. rexmits */   	u32	rcv_wnd;	/* Current receiver window		*/  	u32	write_seq;	/* Tail(+1) of data held in tcp send buffer */ | 
