From 6d08465dac36747c05cb3775fd09ddfc177c57d4 Mon Sep 17 00:00:00 2001 From: Jeffrey Hsu Date: Mon, 21 Mar 2005 01:56:22 +0000 Subject: [PATCH] When doing Limited Transmit, don't retract snd_nxt if it was previously the same as snd_max. Submitted by: Noritoshi Demizu --- sys/netinet/tcp_input.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 17cf18bb50..28ec989428 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -82,7 +82,7 @@ * * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95 * $FreeBSD: src/sys/netinet/tcp_input.c,v 1.107.2.38 2003/05/21 04:46:41 cjc Exp $ - * $DragonFly: src/sys/netinet/tcp_input.c,v 1.56 2005/03/21 01:49:43 hsu Exp $ + * $DragonFly: src/sys/netinet/tcp_input.c,v 1.57 2005/03/21 01:56:22 hsu Exp $ */ #include "opt_ipfw.h" /* for ipfw_fwd */ @@ -1995,7 +1995,8 @@ fastretransmit: (tp->t_dupacks - tp->snd_limited) * tp->t_maxseg; tcp_output(tp); - tp->snd_nxt = oldsndnxt; + if (SEQ_LT(oldsndnxt, oldsndmax)) + tp->snd_nxt = oldsndnxt; tp->snd_cwnd = oldcwnd; sent = tp->snd_max - oldsndmax; if (sent > tp->t_maxseg) { -- 2.41.0