|
@@ -1141,11 +1141,9 @@ int tcp_trim_head(struct sock *sk, struct sk_buff *skb, u32 len)
|
|
sk_mem_uncharge(sk, len);
|
|
sk_mem_uncharge(sk, len);
|
|
sock_set_flag(sk, SOCK_QUEUE_SHRUNK);
|
|
sock_set_flag(sk, SOCK_QUEUE_SHRUNK);
|
|
|
|
|
|
- /* Any change of skb->len requires recalculation of tso
|
|
|
|
- * factor and mss.
|
|
|
|
- */
|
|
|
|
|
|
+ /* Any change of skb->len requires recalculation of tso factor. */
|
|
if (tcp_skb_pcount(skb) > 1)
|
|
if (tcp_skb_pcount(skb) > 1)
|
|
- tcp_set_skb_tso_segs(sk, skb, tcp_current_mss(sk));
|
|
|
|
|
|
+ tcp_set_skb_tso_segs(sk, skb, tcp_skb_mss(skb));
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|