Commit ba244fe9005323452428fee4b4b7d0c70a06b627

Authored by David S. Miller
1 parent c127437641

[TCP]: Fix tcp_tso_should_defer() when limit>=65536

That's >= a full sized TSO frame, so we should always
return 0 in that case.

Based upon a report and initial patch from Lachlan
Andrew, final patch suggested by Herbert Xu.

Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 1 changed file with 4 additions and 0 deletions Side-by-side Diff

net/ipv4/tcp_output.c
... ... @@ -1036,6 +1036,10 @@
1036 1036  
1037 1037 limit = min(send_win, cong_win);
1038 1038  
  1039 + /* If a full-sized TSO skb can be sent, do it. */
  1040 + if (limit >= 65536)
  1041 + return 0;
  1042 +
1039 1043 if (sysctl_tcp_tso_win_divisor) {
1040 1044 u32 chunk = min(tp->snd_wnd, tp->snd_cwnd * tp->mss_cache);
1041 1045