diff options
author | gVisor bot <gvisor-bot@google.com> | 2021-02-26 00:34:30 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2021-02-26 00:34:30 +0000 |
commit | 05e99cbff6ceff51ad0b0697ab969f58f6441ef7 (patch) | |
tree | 035d01f50eb4786ca1c5f1de648499b005f258c0 | |
parent | 927bd8448bb30b4250991f4094a6f3e7d58fd9d2 (diff) | |
parent | f3de211bb764d4e720879509debf918d37a71ce7 (diff) |
Merge release-20210208.0-99-gf3de211bb (automated)
-rw-r--r-- | pkg/tcpip/transport/tcp/rack.go | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/pkg/tcpip/transport/tcp/rack.go b/pkg/tcpip/transport/tcp/rack.go index ecabeceb4..0a0d5f7a1 100644 --- a/pkg/tcpip/transport/tcp/rack.go +++ b/pkg/tcpip/transport/tcp/rack.go @@ -475,9 +475,11 @@ func (rc *rackControl) DoRecovery(_ *segment, fastRetransmit bool) { break } - snd.outstanding++ + if sent := snd.maybeSendSegment(seg, int(snd.ep.scoreboard.SMSS()), snd.sndUna.Add(snd.sndWnd)); !sent { + break + } dataSent = true - snd.sendSegment(seg) + snd.outstanding += snd.pCount(seg, snd.maxPayloadSize) } snd.postXmit(dataSent, true /* shouldScheduleProbe */) |