|
@@ -965,7 +965,8 @@ static inline unsigned int tcp_cwnd_test(struct tcp_sock *tp, struct sk_buff *sk
|
|
|
u32 in_flight, cwnd;
|
|
|
|
|
|
/* Don't be strict about the congestion window for the final FIN. */
|
|
|
- if (TCP_SKB_CB(skb)->flags & TCPCB_FLAG_FIN)
|
|
|
+ if ((TCP_SKB_CB(skb)->flags & TCPCB_FLAG_FIN) &&
|
|
|
+ tcp_skb_pcount(skb) == 1)
|
|
|
return 1;
|
|
|
|
|
|
in_flight = tcp_packets_in_flight(tp);
|