summaryrefslogtreecommitdiffhomepage
path: root/pkg/tcpip/transport
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2021-02-26 00:34:30 +0000
committergVisor bot <gvisor-bot@google.com>2021-02-26 00:34:30 +0000
commit05e99cbff6ceff51ad0b0697ab969f58f6441ef7 (patch)
tree035d01f50eb4786ca1c5f1de648499b005f258c0 /pkg/tcpip/transport
parent927bd8448bb30b4250991f4094a6f3e7d58fd9d2 (diff)
parentf3de211bb764d4e720879509debf918d37a71ce7 (diff)
Merge release-20210208.0-99-gf3de211bb (automated)
Diffstat (limited to 'pkg/tcpip/transport')
-rw-r--r--pkg/tcpip/transport/tcp/rack.go6
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 */)