diff options
author | jayanth <jayanth@FreeBSD.org> | 2004-07-26 23:41:12 +0000 |
---|---|---|
committer | jayanth <jayanth@FreeBSD.org> | 2004-07-26 23:41:12 +0000 |
commit | ef090090cb15c366e5a0c4e33a4d06fcc4273d2f (patch) | |
tree | 5fcaa89b6e157481fa5631156d84b32309c3ae87 | |
parent | b138ddd4e5e63f5cc8f2e761dd0a2c312058bda4 (diff) | |
download | FreeBSD-src-ef090090cb15c366e5a0c4e33a4d06fcc4273d2f.zip FreeBSD-src-ef090090cb15c366e5a0c4e33a4d06fcc4273d2f.tar.gz |
Fix for a SACK bug where the very last segment retransmitted
from the SACK scoreboard could result in the next (untransmitted)
segment to be skipped.
-rw-r--r-- | sys/netinet/tcp_output.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index f6afc18..c69b90a 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -951,7 +951,7 @@ send: tp->t_flags |= TF_SENTFIN; } } - if (tp->sack_enable && sack_rxmit && (p->rxmit != tp->snd_nxt)) + if (tp->sack_enable && sack_rxmit) goto timer; tp->snd_nxt += len; if (SEQ_GT(tp->snd_nxt, tp->snd_max)) { |