Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Sep 2020 21:36:55 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r365281 - in stable: 11/sys/conf 11/sys/modules 11/sys/modules/tcp 12/sys/conf 12/sys/modules 12/sys/modules/tcp
Message-ID:  <202009022136.082LatjO029946@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Wed Sep  2 21:36:55 2020
New Revision: 365281
URL: https://svnweb.freebsd.org/changeset/base/365281

Log:
  MFC 361638,361712: Only build ipsec modules for kernels with IPSEC_SUPPORT.
  
  361638:
  Only build ipsec modules if the kernel includes IPSEC_SUPPORT.
  
  Honoring the kernel-supplied opt_ipsec.h in r361632 causes builds of
  ipsec modules to fail if the kernel doesn't include IPSEC_SUPPORT.
  However, the module can never be loaded into such a kernel, so only
  build the modules if the kernel includes IPSEC_SUPPORT.
  
  361712: (kevans)
  modules: don't build ipsec/tcpmd5 if the kernel is configured for IPSEC
  
  IPSEC_SUPPORT can currently only cope with either IPSEC || IPSEC_SUPPORT,
  not both. Refrain from building if IPSEC is set, as the resulting module
  won't be able to load anyways if it's built into the kernel.
  
  KERN_OPTS is safe here; for tied modules, it will reflect the kernel
  configuration. For untied modules, it will defer to whatever is set in
  ^/sys/conf/config.mk, which doesn't set IPSEC for modules. The latter
  situation has some risk to it for uncommon scenarios, but such is the life
  of untied kernel modules.

Modified:
  stable/12/sys/conf/config.mk
  stable/12/sys/modules/Makefile
  stable/12/sys/modules/tcp/Makefile
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/conf/config.mk
  stable/11/sys/modules/Makefile
  stable/11/sys/modules/tcp/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/conf/config.mk
==============================================================================
--- stable/12/sys/conf/config.mk	Wed Sep  2 21:17:54 2020	(r365280)
+++ stable/12/sys/conf/config.mk	Wed Sep  2 21:36:55 2020	(r365281)
@@ -19,8 +19,10 @@ opt_inet.h:
 opt_inet6.h:
 	@echo "#define INET6 1" > ${.TARGET}
 .endif
+.if ${MK_IPSEC_SUPPORT} != "no"
 opt_ipsec.h:
 	@echo "#define IPSEC_SUPPORT 1" > ${.TARGET}
+.endif
 .if ${MK_RATELIMIT} != "no"
 opt_ratelimit.h:
 	@echo "#define RATELIMIT 1" > ${.TARGET}
@@ -50,6 +52,9 @@ KERN_OPTS+= INET TCP_OFFLOAD
 .endif
 .if ${MK_INET6_SUPPORT} != "no"
 KERN_OPTS+= INET6
+.endif
+.if ${MK_IPSEC_SUPPORT} != "no"
+KERN_OPTS+= IPSEC_SUPPORT
 .endif
 .if ${MK_SCTP_SUPPORT} != "no"
 KERN_OPTS+= SCTP_SUPPORT

Modified: stable/12/sys/modules/Makefile
==============================================================================
--- stable/12/sys/modules/Makefile	Wed Sep  2 21:17:54 2020	(r365280)
+++ stable/12/sys/modules/Makefile	Wed Sep  2 21:36:55 2020	(r365281)
@@ -8,6 +8,8 @@ SUBDIR_PARALLEL=
 # Modules that include binary-only blobs of microcode should be selectable by
 # MK_SOURCELESS_UCODE option (see below).
 
+.include "${SYSDIR}/conf/config.mk"
+
 .if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
 SUBDIR=${MODULES_OVERRIDE}
 .else
@@ -459,7 +461,7 @@ _if_enc=	if_enc
 _if_gif=	if_gif
 _if_gre=	if_gre
 _ipfw_pmod=	ipfw_pmod
-.if ${MK_IPSEC_SUPPORT} != "no"
+.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC}
 _ipsec=		ipsec
 .endif
 .if ${MK_SCTP_SUPPORT} != "no" || ${MK_SCTP} != "no"
@@ -868,8 +870,6 @@ afterinstall: .PHONY
 		kldxref ${DESTDIR}${KMODDIR}; \
 	fi
 .endif
-
-.include "${SYSDIR}/conf/config.mk"
 
 SUBDIR:= ${SUBDIR:u:O}
 

Modified: stable/12/sys/modules/tcp/Makefile
==============================================================================
--- stable/12/sys/modules/tcp/Makefile	Wed Sep  2 21:17:54 2020	(r365280)
+++ stable/12/sys/modules/tcp/Makefile	Wed Sep  2 21:36:55 2020	(r365281)
@@ -15,7 +15,7 @@ _tcp_rack= 	rack
 
 .if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
 	defined(ALL_MODULES)
-.if ${MK_IPSEC_SUPPORT} != "no"
+.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC}
 _tcpmd5=	tcpmd5
 .endif
 .endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202009022136.082LatjO029946>