diff options
author | John Heffner <jheffner@psc.edu> | 2007-02-05 20:53:11 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-02-08 15:38:51 -0500 |
commit | 104439a8876a98eac1b6593907a3c7bc51e362fe (patch) | |
tree | 0b25d0835e85b37d009747124cca3399d72ae514 /net/ipv4/tcp_output.c | |
parent | 8a3c3a972741dec77220a19642bd3331551ad2d9 (diff) |
[TCP]: Don't apply FIN exception to full TSO segments.
Signed-off-by: John Heffner <jheffner@psc.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r-- | net/ipv4/tcp_output.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 975f4472af29..58b7111523f4 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c | |||
@@ -965,7 +965,8 @@ static inline unsigned int tcp_cwnd_test(struct tcp_sock *tp, struct sk_buff *sk | |||
965 | u32 in_flight, cwnd; | 965 | u32 in_flight, cwnd; |
966 | 966 | ||
967 | /* Don't be strict about the congestion window for the final FIN. */ | 967 | /* Don't be strict about the congestion window for the final FIN. */ |
968 | if (TCP_SKB_CB(skb)->flags & TCPCB_FLAG_FIN) | 968 | if ((TCP_SKB_CB(skb)->flags & TCPCB_FLAG_FIN) && |
969 | tcp_skb_pcount(skb) == 1) | ||
969 | return 1; | 970 | return 1; |
970 | 971 | ||
971 | in_flight = tcp_packets_in_flight(tp); | 972 | in_flight = tcp_packets_in_flight(tp); |