From 31ea9b1ec5820f58f17c8c156b84f057208df99d Mon Sep 17 00:00:00 2001 From: Sepherosa Ziehau Date: Wed, 11 Apr 2012 11:23:39 +0800 Subject: [PATCH] tcp_input: Partly revert 98cb2337e1000153d84b64a5e9aabbecda8e8dbf Since all TCP operations are carried in its own netisr thread, the workaround/comment is no longer needed/applied; change it into assertion instead. The "snd_nxt < snd_una" should (hopefully) have been fixed by: 1ff9b7d322dc5a26f7173aa8c38ecb79da80e419 --- sys/netinet/tcp_input.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 86b32651ee..d8c90fb9a9 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1985,16 +1985,10 @@ fastretransmit: tp->t_maxseg; tcp_output(tp); - /* - * Other acks may have been processed, - * snd_nxt cannot be reset to a value less - * then snd_una. - */ if (SEQ_LT(oldsndnxt, oldsndmax)) { - if (SEQ_GT(oldsndnxt, tp->snd_una)) + KASSERT(SEQ_GEQ(oldsndnxt, tp->snd_una), + ("snd_una moved in other threads")); tp->snd_nxt = oldsndnxt; - else - tp->snd_nxt = tp->snd_una; } tp->snd_cwnd = oldcwnd; sent = tp->snd_max - oldsndmax; -- 2.41.0