tcp_set_skb_tso_segs(skb, tp->mss_cache_std); 
tcp_set_skb_tso_segs(sk, skb); 
static __inline__ int tcp_snd_test(const struct tcp_sock *tp, 				   struct sk_buff *skb,				   unsigned cur_mss, int nonagle){	int pkts = tcp_skb_pcount(skb);	if (!pkts) {		tcp_set_skb_tso_segs(skb, tp->mss_cache_std);		pkts = tcp_skb_pcount(skb);	}	/*	RFC 1122 - section 4.2.3.4	 *	 *	We must queue if	 *	 *	a) The right edge of this frame exceeds the window	 *	b) There are packets in flight and we have a small segment	 *	   [SWS avoidance and Nagle algorithm]	 *	   (part of SWS is done on packetization)	 *	   Minshall version sounds: there are no _small_	 *	   segments in flight. (tcp_nagle_check)	 *	c) We have too many packets 'in flight'	 *	 * 	Don't use the nagle rule for urgent data (or	 *	for the final FIN -DaveM).	 *	 *	Also, Nagle rule does not apply to frames, which	 *	sit in the middle of queue (they have no chances	 *	to get new data) and if room at tail of skb is	 *	not enough to save something seriously (<32 for now).	 */	/* Don't be strict about the congestion window for the	 * final FIN frame.  -DaveM	 */	return (((nonagle&TCP_NAGLE_PUSH) || tp->urg_mode		 || !tcp_nagle_check(tp, skb, cur_mss, nonagle)) &&		(((tcp_packets_in_flight(tp) + (pkts-1)) < tp->snd_cwnd) ||		 (TCP_SKB_CB(skb)->flags & TCPCB_FLAG_FIN)) &&		!after(TCP_SKB_CB(skb)->end_seq, tp->snd_una + tp->snd_wnd));}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/d5ac99a648b8c61d0c7f1c32a8ab7f1dca0123d2/tcp.h/buggy/include/net/tcp.h