svn commit: r351328 - head/sys/netinet/tcp_stacks

Randall Stewart rrs at FreeBSD.org
Wed Aug 21 10:45:29 UTC 2019


Author: rrs
Date: Wed Aug 21 10:45:28 2019
New Revision: 351328
URL: https://svnweb.freebsd.org/changeset/base/351328

Log:
  Fix an issue when TSO and Rack play together. Basically
  an retransmission of the initial SYN (with data) would
  cause us to strip the SYN and decrement/increase offset/len
  which then caused us a -1 offset and a panic.
  
  Reported by:	Larry Rosenman
  (Michael Tuexen helped me debug this at the IETF)

Modified:
  head/sys/netinet/tcp_stacks/rack.c

Modified: head/sys/netinet/tcp_stacks/rack.c
==============================================================================
--- head/sys/netinet/tcp_stacks/rack.c	Wed Aug 21 10:42:31 2019	(r351327)
+++ head/sys/netinet/tcp_stacks/rack.c	Wed Aug 21 10:45:28 2019	(r351328)
@@ -7405,9 +7405,6 @@ again:
 		    (tp->t_state == TCPS_SYN_RECEIVED))
 			flags &= ~TH_SYN;
 #endif
-		sb_offset--, len++;
-		if (sbavail(sb) == 0)
-			len = 0;
 	}
 	/*
 	 * Be careful not to send data and/or FIN on SYN segments. This


More information about the svn-src-all mailing list