sepherosa_gmail.com updated the summary for this revision.
sepherosa_gmail.com updated this revision to Diff 15642.

CHANGES SINCE LAST UPDATE
  https://reviews.freebsd.org/D5872?vs=14968&id=15642

REVISION DETAIL
  https://reviews.freebsd.org/D5872

AFFECTED FILES
  sys/netinet/tcp_output.c

CHANGE DETAILS
  diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c
  --- a/sys/netinet/tcp_output.c
  +++ b/sys/netinet/tcp_output.c
  @@ -1545,9 +1545,10 @@
                        tp->t_softerror = error;
                        return (error);
                case ENOBUFS:
  -                     if (!tcp_timer_active(tp, TT_REXMT) &&
  +                     if ((len > 0 || (flags & (TH_SYN | TH_FIN))) &&
  +                         !tcp_timer_active(tp, TT_REXMT) &&
                            !tcp_timer_active(tp, TT_PERSIST))
  -                             tcp_timer_activate(tp, TT_REXMT, tp->t_rxtcur);
  +                             panic("neither rexmt nor persist timer is set");
                        tp->snd_cwnd = tp->t_maxseg;
                        return (0);
                case EMSGSIZE:

EMAIL PREFERENCES
  https://reviews.freebsd.org/settings/panel/emailpreferences/

To: sepherosa_gmail.com, network, glebius, adrian, delphij, 
decui_microsoft.com, honzhan_microsoft.com, howard0su_gmail.com, 
freebsd-net-list, lstewart, hiren, jtl, transport
Cc: gnn, mike-karels.net, jtl
diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c
--- a/sys/netinet/tcp_output.c
+++ b/sys/netinet/tcp_output.c
@@ -1545,9 +1545,10 @@
 			tp->t_softerror = error;
 			return (error);
 		case ENOBUFS:
-	                if (!tcp_timer_active(tp, TT_REXMT) &&
+			if ((len > 0 || (flags & (TH_SYN | TH_FIN))) &&
+			    !tcp_timer_active(tp, TT_REXMT) &&
 			    !tcp_timer_active(tp, TT_PERSIST))
-	                        tcp_timer_activate(tp, TT_REXMT, tp->t_rxtcur);
+				panic("neither rexmt nor persist timer is set");
 			tp->snd_cwnd = tp->t_maxseg;
 			return (0);
 		case EMSGSIZE:

_______________________________________________
freebsd-net@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to