svn commit: r250140 - stable/9/sys/netinet
Lawrence Stewart
lstewart at FreeBSD.org
Wed May 1 08:53:40 UTC 2013
Author: lstewart
Date: Wed May 1 08:53:40 2013
New Revision: 250140
URL: http://svnweb.freebsd.org/changeset/base/250140
Log:
MFC r245783:
Simplify and fix a bug in cc_ack_received()'s "are we congestion window limited"
logic (refer to [1] for associated discussion). snd_cwnd and snd_wnd are
unsigned long and on 64 bit hosts, min() will truncate them to 32 bits and could
therefore potentially corrupt the result (although under normal operation,
neither variable should legitmately exceed 32 bits).
[1] http://lists.freebsd.org/pipermail/freebsd-net/2013-January/034297.html
Submitted by: jhb
Modified:
stable/9/sys/netinet/tcp_input.c
Directory Properties:
stable/9/sys/ (props changed)
Modified: stable/9/sys/netinet/tcp_input.c
==============================================================================
--- stable/9/sys/netinet/tcp_input.c Wed May 1 07:13:36 2013 (r250139)
+++ stable/9/sys/netinet/tcp_input.c Wed May 1 08:53:40 2013 (r250140)
@@ -269,7 +269,7 @@ cc_ack_received(struct tcpcb *tp, struct
INP_WLOCK_ASSERT(tp->t_inpcb);
tp->ccv->bytes_this_ack = BYTES_THIS_ACK(tp, th);
- if (tp->snd_cwnd == min(tp->snd_cwnd, tp->snd_wnd))
+ if (tp->snd_cwnd <= tp->snd_wnd)
tp->ccv->flags |= CCF_CWND_LIMITED;
else
tp->ccv->flags &= ~CCF_CWND_LIMITED;
More information about the svn-src-stable-9
mailing list