]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
TCP: send full initial window when timestamps are in use
authorRichard Scheffenegger <rscheff@FreeBSD.org>
Fri, 25 Sep 2020 10:38:19 +0000 (10:38 +0000)
committerRichard Scheffenegger <rscheff@FreeBSD.org>
Fri, 25 Sep 2020 10:38:19 +0000 (10:38 +0000)
commite39956612370981605b903fd7609dca0db81a65c
treef5ec0e7d99f4acc123a8ce6941579e262b576e16
parent1567c937e2cb709355b1cc3b62c8438147d6e05b
TCP: send full initial window when timestamps are in use

The fastpath in tcp_output tries to send out
full segments, and avoid sending partial segments by
comparing against the static t_maxseg variable.
That value does not consider tcp options like timestamps,
while the initial window calculation is using
the correct dynamic tcp_maxseg() function.

Due to this interaction, the last, full size segment
is considered too short and not sent out immediately.

Reviewed by: tuexen
MFC after: 2 weeks
Sponsored by: NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D26478
sys/netinet/tcp.h
sys/netinet/tcp_output.c
sys/netinet/tcp_subr.c