diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-06-05 11:35:39 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-06-05 14:16:00 +0200 |
commit | 705e362ea5d6f711e987f5d370467b8873fc2255 (patch) | |
tree | bb2152c95b76783069419dcd1c24014ba0eb3a1b /freebsd/sys/netinet/cc | |
parent | Add RTEMS-specific getcredhostuuid() (diff) | |
download | rtems-libbsd-705e362ea5d6f711e987f5d370467b8873fc2255.tar.bz2 |
Update to FreeBSD stable/12 2019-06-05
Git mirror commit 78576620f2689e23144a1cf1bf55106cc6abe2b7.
Diffstat (limited to 'freebsd/sys/netinet/cc')
-rw-r--r-- | freebsd/sys/netinet/cc/cc_newreno.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/freebsd/sys/netinet/cc/cc_newreno.c b/freebsd/sys/netinet/cc/cc_newreno.c index b1307c92..1ab85042 100644 --- a/freebsd/sys/netinet/cc/cc_newreno.c +++ b/freebsd/sys/netinet/cc/cc_newreno.c @@ -301,7 +301,12 @@ newreno_post_recovery(struct cc_var *ccv) pipe = CCV(ccv, snd_max) - ccv->curack; if (pipe < CCV(ccv, snd_ssthresh)) - CCV(ccv, snd_cwnd) = pipe + CCV(ccv, t_maxseg); + /* + * Ensure that cwnd does not collapse to 1 MSS under + * adverse conditons. Implements RFC6582 + */ + CCV(ccv, snd_cwnd) = max(pipe, CCV(ccv, t_maxseg)) + + CCV(ccv, t_maxseg); else CCV(ccv, snd_cwnd) = CCV(ccv, snd_ssthresh); } |