aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlpo Järvinen <ilpo.jarvinen@helsinki.fi>2007-10-01 18:28:48 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 19:54:00 -0400
commit3de96471bd7fb76406e975ef6387abe3a0698149 (patch)
treee075e0ce74b97d906bdca160fe02b60e3cb9d907
parent0e835331e3111e5a92eb3a852405ea71ca8fff97 (diff)
[TCP]: Wrap-safed reordering detection FRTO check
In case somebody has a suggestion about a better place for this check, which must guarantee execution "early enough" (i.e, before the wrap can occur), I'm very open to them. Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/ipv4/tcp_input.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index c1339d88bbf3..7c1a92ffa083 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -3027,6 +3027,9 @@ static int tcp_ack(struct sock *sk, struct sk_buff *skb, int flag)
3027 /* See if we can take anything off of the retransmit queue. */ 3027 /* See if we can take anything off of the retransmit queue. */
3028 flag |= tcp_clean_rtx_queue(sk, &seq_rtt); 3028 flag |= tcp_clean_rtx_queue(sk, &seq_rtt);
3029 3029
3030 /* Guarantee sacktag reordering detection against wrap-arounds */
3031 if (before(tp->frto_highmark, tp->snd_una))
3032 tp->frto_highmark = 0;
3030 if (tp->frto_counter) 3033 if (tp->frto_counter)
3031 frto_cwnd = tcp_process_frto(sk, flag); 3034 frto_cwnd = tcp_process_frto(sk, flag);
3032 3035