svn commit: r339037 - stable/11/sys/netinet

Andrey V. Elsukov ae at FreeBSD.org
Mon Oct 1 09:40:42 UTC 2018


Author: ae
Date: Mon Oct  1 09:40:41 2018
New Revision: 339037
URL: https://svnweb.freebsd.org/changeset/base/339037

Log:
  MFC r313168 (by pkelsey):
    Fix VIMAGE-related bugs in TFO.  The autokey callout vnet context was
    not being initialized, and the per-vnet fastopen context was only
    being initialized for the default vnet.
  
    PR:		216613

Modified:
  stable/11/sys/netinet/tcp_fastopen.c
  stable/11/sys/netinet/tcp_subr.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/netinet/tcp_fastopen.c
==============================================================================
--- stable/11/sys/netinet/tcp_fastopen.c	Mon Oct  1 08:49:47 2018	(r339036)
+++ stable/11/sys/netinet/tcp_fastopen.c	Mon Oct  1 09:40:41 2018	(r339037)
@@ -209,6 +209,7 @@ tcp_fastopen_init(void)
 	rm_init(&V_tcp_fastopen_keylock, "tfo_keylock");
 	callout_init_rm(&V_tcp_fastopen_autokey_ctx.c,
 	    &V_tcp_fastopen_keylock, 0);
+	V_tcp_fastopen_autokey_ctx.v = curvnet;
 	V_tcp_fastopen_keys.newest = TCP_FASTOPEN_MAX_KEYS - 1;
 }
 

Modified: stable/11/sys/netinet/tcp_subr.c
==============================================================================
--- stable/11/sys/netinet/tcp_subr.c	Mon Oct  1 08:49:47 2018	(r339036)
+++ stable/11/sys/netinet/tcp_subr.c	Mon Oct  1 09:40:41 2018	(r339037)
@@ -655,6 +655,10 @@ tcp_init(void)
 	V_sack_hole_zone = uma_zcreate("sackhole", sizeof(struct sackhole),
 	    NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0);
 
+#ifdef TCP_RFC7413
+	tcp_fastopen_init();
+#endif
+
 	/* Skip initialization of globals for non-default instances. */
 	if (!IS_DEFAULT_VNET(curvnet))
 		return;
@@ -707,10 +711,6 @@ tcp_init(void)
 		EVENTHANDLER_PRI_ANY);
 #ifdef TCPPCAP
 	tcp_pcap_init();
-#endif
-
-#ifdef TCP_RFC7413
-	tcp_fastopen_init();
 #endif
 }
 


More information about the svn-src-stable-11 mailing list