Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-23 Thread Andrey V. Elsukov
On 23.06.2020 01:20, John Baldwin wrote:
>> I tend to assume that a buildkernel of GENERIC without any special flags
>> will always build all modules (except those not available for the target
>> platform of course), so I was a bit surprised to see that this isn't the
>> case for ipsec.ko.  As Rodney pointed out it provides marginally better
>> coverage against build breaks.  If you think we can restore the old
>> behaviour for ipsec without too much work I think it'd be reasonable to
>> change that and compile sctp.ko even when "options SCTP" is configured.
>> I can't spot any similar cases in sys/modules/Makefile with a bit of
>> skimming.
> 
> I don't think ipsec.ko is easily fixable when I looked at it.  I think it
> is fine to leave sctp.ko building as part of GENERIC though.

Hi,

I'm sorry, I missed these changes, but in the past there weren't any
problems in building ipsec.ko module with/without any possible options.
I'll try to look what happened and what can be do to fix this at the
weekend.

-- 
WBR, Andrey V. Elsukov
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-22 Thread John Baldwin
On 6/22/20 3:07 PM, Mark Johnston wrote:
> On Mon, Jun 22, 2020 at 11:35:38AM -0700, John Baldwin wrote:
>> On 6/21/20 6:10 PM, Mark Johnston wrote:
>>> On Fri, Jun 19, 2020 at 08:33:35AM -0700, John Baldwin wrote:
 On 6/18/20 12:32 PM, Mark Johnston wrote:
> Author: markj
> Date: Thu Jun 18 19:32:34 2020
> New Revision: 362338
> URL: https://svnweb.freebsd.org/changeset/base/362338
>
> Log:
>   Add the SCTP_SUPPORT kernel option.
>   
>   This is in preparation for enabling a loadable SCTP stack.  Analogous to
>   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
>   in order to support a loadable SCTP implementation.
>   
>   Discussed with: tuexen
>   MFC after:  2 weeks
>   Sponsored by:   The FreeBSD Foundation

 Do you want to add similar handling to sys/conf/config.mk that we have
 for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
 kernel like we do for ipsec.ko and/or only build it if the kernel contains
 SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
 sure if the same is true for sctp.ko)
>>>
>>> Sorry for the delay.
>>> I think we do indeed want similar handling in config.mk, I will work on
>>> it.  It is probably also reasonable to avoid compiling sctp.ko when
>>> SCTP_SUPPORT is not defined, though I can't see a reason that wouldn't
>>> work today since SCTP_SUPPORT is not used in any headers.
>>
>> Ok.  ipsec.ko mattered more when the build broke.  Whether or not we compile
>> "duplicate" modules for kernels is perhaps a larger question.  I think I
>> might favor that change, but it is a larger change that merits some thought.
>> In particular, you want good code coverage for things like LINT builds, so
>> maybe we really should still compile modules whenever possible.
> 
> I tend to assume that a buildkernel of GENERIC without any special flags
> will always build all modules (except those not available for the target
> platform of course), so I was a bit surprised to see that this isn't the
> case for ipsec.ko.  As Rodney pointed out it provides marginally better
> coverage against build breaks.  If you think we can restore the old
> behaviour for ipsec without too much work I think it'd be reasonable to
> change that and compile sctp.ko even when "options SCTP" is configured.
> I can't spot any similar cases in sys/modules/Makefile with a bit of
> skimming.

I don't think ipsec.ko is easily fixable when I looked at it.  I think it
is fine to leave sctp.ko building as part of GENERIC though.

-- 
John Baldwin
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-22 Thread Mark Johnston
On Mon, Jun 22, 2020 at 11:35:38AM -0700, John Baldwin wrote:
> On 6/21/20 6:10 PM, Mark Johnston wrote:
> > On Fri, Jun 19, 2020 at 08:33:35AM -0700, John Baldwin wrote:
> >> On 6/18/20 12:32 PM, Mark Johnston wrote:
> >>> Author: markj
> >>> Date: Thu Jun 18 19:32:34 2020
> >>> New Revision: 362338
> >>> URL: https://svnweb.freebsd.org/changeset/base/362338
> >>>
> >>> Log:
> >>>   Add the SCTP_SUPPORT kernel option.
> >>>   
> >>>   This is in preparation for enabling a loadable SCTP stack.  Analogous to
> >>>   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
> >>>   in order to support a loadable SCTP implementation.
> >>>   
> >>>   Discussed with: tuexen
> >>>   MFC after:  2 weeks
> >>>   Sponsored by:   The FreeBSD Foundation
> >>
> >> Do you want to add similar handling to sys/conf/config.mk that we have
> >> for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
> >> kernel like we do for ipsec.ko and/or only build it if the kernel contains
> >> SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
> >> sure if the same is true for sctp.ko)
> > 
> > Sorry for the delay.
> > I think we do indeed want similar handling in config.mk, I will work on
> > it.  It is probably also reasonable to avoid compiling sctp.ko when
> > SCTP_SUPPORT is not defined, though I can't see a reason that wouldn't
> > work today since SCTP_SUPPORT is not used in any headers.
> 
> Ok.  ipsec.ko mattered more when the build broke.  Whether or not we compile
> "duplicate" modules for kernels is perhaps a larger question.  I think I
> might favor that change, but it is a larger change that merits some thought.
> In particular, you want good code coverage for things like LINT builds, so
> maybe we really should still compile modules whenever possible.

I tend to assume that a buildkernel of GENERIC without any special flags
will always build all modules (except those not available for the target
platform of course), so I was a bit surprised to see that this isn't the
case for ipsec.ko.  As Rodney pointed out it provides marginally better
coverage against build breaks.  If you think we can restore the old
behaviour for ipsec without too much work I think it'd be reasonable to
change that and compile sctp.ko even when "options SCTP" is configured.
I can't spot any similar cases in sys/modules/Makefile with a bit of
skimming.
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-22 Thread Rodney W. Grimes
> On 6/21/20 6:10 PM, Mark Johnston wrote:
> > On Fri, Jun 19, 2020 at 08:33:35AM -0700, John Baldwin wrote:
> >> On 6/18/20 12:32 PM, Mark Johnston wrote:
> >>> Author: markj
> >>> Date: Thu Jun 18 19:32:34 2020
> >>> New Revision: 362338
> >>> URL: https://svnweb.freebsd.org/changeset/base/362338
> >>>
> >>> Log:
> >>>   Add the SCTP_SUPPORT kernel option.
> >>>   
> >>>   This is in preparation for enabling a loadable SCTP stack.  Analogous to
> >>>   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
> >>>   in order to support a loadable SCTP implementation.
> >>>   
> >>>   Discussed with: tuexen
> >>>   MFC after:  2 weeks
> >>>   Sponsored by:   The FreeBSD Foundation
> >>
> >> Do you want to add similar handling to sys/conf/config.mk that we have
> >> for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
> >> kernel like we do for ipsec.ko and/or only build it if the kernel contains
> >> SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
> >> sure if the same is true for sctp.ko)
> > 
> > Sorry for the delay.
> > I think we do indeed want similar handling in config.mk, I will work on
> > it.  It is probably also reasonable to avoid compiling sctp.ko when
> > SCTP_SUPPORT is not defined, though I can't see a reason that wouldn't
> > work today since SCTP_SUPPORT is not used in any headers.
> 
> Ok.  ipsec.ko mattered more when the build broke.  Whether or not we compile
> "duplicate" modules for kernels is perhaps a larger question.  I think I
> might favor that change, but it is a larger change that merits some thought.
> In particular, you want good code coverage for things like LINT builds, so
> maybe we really should still compile modules whenever possible.

As a person that builds a lot of stuff into his kernel, aka I run
moduleless most of the time, I still would like the modules to build
so I know I have not busted that with other changes.  It is just too
easy to do, IMHO.

> -- 
> John Baldwin
-- 
Rod Grimes rgri...@freebsd.org
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-22 Thread John Baldwin
On 6/21/20 6:10 PM, Mark Johnston wrote:
> On Fri, Jun 19, 2020 at 08:33:35AM -0700, John Baldwin wrote:
>> On 6/18/20 12:32 PM, Mark Johnston wrote:
>>> Author: markj
>>> Date: Thu Jun 18 19:32:34 2020
>>> New Revision: 362338
>>> URL: https://svnweb.freebsd.org/changeset/base/362338
>>>
>>> Log:
>>>   Add the SCTP_SUPPORT kernel option.
>>>   
>>>   This is in preparation for enabling a loadable SCTP stack.  Analogous to
>>>   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
>>>   in order to support a loadable SCTP implementation.
>>>   
>>>   Discussed with:   tuexen
>>>   MFC after:2 weeks
>>>   Sponsored by: The FreeBSD Foundation
>>
>> Do you want to add similar handling to sys/conf/config.mk that we have
>> for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
>> kernel like we do for ipsec.ko and/or only build it if the kernel contains
>> SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
>> sure if the same is true for sctp.ko)
> 
> Sorry for the delay.
> I think we do indeed want similar handling in config.mk, I will work on
> it.  It is probably also reasonable to avoid compiling sctp.ko when
> SCTP_SUPPORT is not defined, though I can't see a reason that wouldn't
> work today since SCTP_SUPPORT is not used in any headers.

Ok.  ipsec.ko mattered more when the build broke.  Whether or not we compile
"duplicate" modules for kernels is perhaps a larger question.  I think I
might favor that change, but it is a larger change that merits some thought.
In particular, you want good code coverage for things like LINT builds, so
maybe we really should still compile modules whenever possible.

-- 
John Baldwin
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-21 Thread Mark Johnston
On Fri, Jun 19, 2020 at 08:33:35AM -0700, John Baldwin wrote:
> On 6/18/20 12:32 PM, Mark Johnston wrote:
> > Author: markj
> > Date: Thu Jun 18 19:32:34 2020
> > New Revision: 362338
> > URL: https://svnweb.freebsd.org/changeset/base/362338
> > 
> > Log:
> >   Add the SCTP_SUPPORT kernel option.
> >   
> >   This is in preparation for enabling a loadable SCTP stack.  Analogous to
> >   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
> >   in order to support a loadable SCTP implementation.
> >   
> >   Discussed with:   tuexen
> >   MFC after:2 weeks
> >   Sponsored by: The FreeBSD Foundation
> 
> Do you want to add similar handling to sys/conf/config.mk that we have
> for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
> kernel like we do for ipsec.ko and/or only build it if the kernel contains
> SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
> sure if the same is true for sctp.ko)

Sorry for the delay.
I think we do indeed want similar handling in config.mk, I will work on
it.  It is probably also reasonable to avoid compiling sctp.ko when
SCTP_SUPPORT is not defined, though I can't see a reason that wouldn't
work today since SCTP_SUPPORT is not used in any headers.
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-19 Thread John Baldwin
On 6/18/20 12:32 PM, Mark Johnston wrote:
> Author: markj
> Date: Thu Jun 18 19:32:34 2020
> New Revision: 362338
> URL: https://svnweb.freebsd.org/changeset/base/362338
> 
> Log:
>   Add the SCTP_SUPPORT kernel option.
>   
>   This is in preparation for enabling a loadable SCTP stack.  Analogous to
>   IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
>   in order to support a loadable SCTP implementation.
>   
>   Discussed with: tuexen
>   MFC after:  2 weeks
>   Sponsored by:   The FreeBSD Foundation

Do you want to add similar handling to sys/conf/config.mk that we have
for IPsec?  Also, do we want to avoid building sctp.ko if it is in the
kernel like we do for ipsec.ko and/or only build it if the kernel contains
SCTP_SUPPORT?  (For ipsec.ko we had to do that as it wouldn't compile, not
sure if the same is true for sctp.ko)

-- 
John Baldwin
___
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r362338 - in head: share/man/man4 sys/conf sys/kern sys/netinet sys/netinet6 sys/netipsec sys/netpfil/pf

2020-06-18 Thread Mark Johnston
Author: markj
Date: Thu Jun 18 19:32:34 2020
New Revision: 362338
URL: https://svnweb.freebsd.org/changeset/base/362338

Log:
  Add the SCTP_SUPPORT kernel option.
  
  This is in preparation for enabling a loadable SCTP stack.  Analogous to
  IPSEC/IPSEC_SUPPORT, the SCTP_SUPPORT kernel option must be configured
  in order to support a loadable SCTP implementation.
  
  Discussed with:   tuexen
  MFC after:2 weeks
  Sponsored by: The FreeBSD Foundation

Modified:
  head/share/man/man4/sctp.4
  head/sys/conf/NOTES
  head/sys/conf/options
  head/sys/kern/uipc_socket.c
  head/sys/netinet/in_proto.c
  head/sys/netinet/ip_divert.c
  head/sys/netinet/ip_output.c
  head/sys/netinet/sctp_crc32.c
  head/sys/netinet/sctp_crc32.h
  head/sys/netinet6/in6_proto.c
  head/sys/netinet6/ip6_forward.c
  head/sys/netinet6/ip6_output.c
  head/sys/netipsec/ipsec_output.c
  head/sys/netpfil/pf/pf.c

Modified: head/share/man/man4/sctp.4
==
--- head/share/man/man4/sctp.4  Thu Jun 18 19:16:03 2020(r362337)
+++ head/share/man/man4/sctp.4  Thu Jun 18 19:32:34 2020(r362338)
@@ -26,13 +26,16 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 4, 2020
+.Dd June 18, 2020
 .Dt SCTP 4
 .Os
 .Sh NAME
 .Nm sctp
 .Nd Internet Stream Control Transmission Protocol
 .Sh SYNOPSIS
+.Cd "options SCTP"
+.Cd "options SCTP_SUPPORT"
+.Pp
 .In sys/types.h
 .In sys/socket.h
 .In netinet/sctp.h

Modified: head/sys/conf/NOTES
==
--- head/sys/conf/NOTES Thu Jun 18 19:16:03 2020(r362337)
+++ head/sys/conf/NOTES Thu Jun 18 19:32:34 2020(r362338)
@@ -697,7 +697,12 @@ optionsLIBALIAS
 # the V6 and V4.. since an association can span
 # both a V6 and V4 address at the SAME time :-)
 #
+# The SCTP_SUPPORT option does not enable SCTP, but provides the necessary
+# support for loading SCTP as a loadable kernel module.
+#
 optionsSCTP
+optionsSCTP_SUPPORT
+
 # There are bunches of options:
 # this one turns on all sorts of
 # nastily printing that you can
@@ -710,6 +715,7 @@ options SCTP
 # bits and prints.. which makes the code run
 # faster.. if you are not debugging don't use.
 optionsSCTP_DEBUG
+
 #
 # All that options after that turn on specific types of
 # logging. You can monitor CWND growth, flight size
@@ -732,7 +738,6 @@ options SCTP_MBCNT_LOGGING
 optionsSCTP_PACKET_LOGGING
 optionsSCTP_LTRACE_CHUNKS
 optionsSCTP_LTRACE_ERRORS
-
 
 # altq(9). Enable the base part of the hooks with the ALTQ option.
 # Individual disciplines must be built into the base system and can not be

Modified: head/sys/conf/options
==
--- head/sys/conf/options   Thu Jun 18 19:16:03 2020(r362337)
+++ head/sys/conf/options   Thu Jun 18 19:32:34 2020(r362338)
@@ -476,6 +476,7 @@ XBONEHACK
 # SCTP
 #
 SCTP   opt_sctp.h
+SCTP_SUPPORT   opt_sctp.h
 SCTP_DEBUG opt_sctp.h # Enable debug printfs
 SCTP_LOCK_LOGGING  opt_sctp.h # Log to KTR lock activity
 SCTP_MBUF_LOGGING  opt_sctp.h # Log to KTR general mbuf aloc/free

Modified: head/sys/kern/uipc_socket.c
==
--- head/sys/kern/uipc_socket.c Thu Jun 18 19:16:03 2020(r362337)
+++ head/sys/kern/uipc_socket.c Thu Jun 18 19:32:34 2020(r362338)
@@ -793,7 +793,7 @@ sonewconn(struct socket *head, int connstatus)
return (so);
 }
 
-#ifdef SCTP
+#if defined(SCTP) || defined(SCTP_SUPPORT)
 /*
  * Socket part of sctp_peeloff().  Detach a new socket from an
  * association.  The new socket is returned with a reference.

Modified: head/sys/netinet/in_proto.c
==
--- head/sys/netinet/in_proto.c Thu Jun 18 19:16:03 2020(r362337)
+++ head/sys/netinet/in_proto.c Thu Jun 18 19:32:34 2020(r362338)
@@ -94,7 +94,7 @@ static struct pr_usrreqs nousrreqs;
 #include 
 #include 
 #include 
-#endif /* SCTP */
+#endif
 
 FEATURE(inet, "Internet Protocol version 4");
 
@@ -324,7 +324,7 @@ SYSCTL_NODE(_net_inet, IPPROTO_UDP, udp, CTLFLAG_RW | 
 "UDP");
 SYSCTL_NODE(_net_inet, IPPROTO_TCP, tcp, CTLFLAG_RW | CTLFLAG_MPSAFE, 0,
 "TCP");
-#ifdef SCTP
+#if defined(SCTP) || defined(SCTP_SUPPORT)
 SYSCTL_NODE(_net_inet, IPPROTO_SCTP, sctp, CTLFLAG_RW | CTLFLAG_MPSAFE, 0,
 "SCTP");
 #endif

Modified: head/sys/netinet/ip_divert.c
==
--- head/sys/netinet/ip_divert.cThu Jun 18 19:16:03 2020
(r362337)
+++ head/sys/netinet/ip_divert.cThu Jun 18 19:32:34 2020
(r362338)
@@ -69,7 +69,7 @@ __FBSDID("$FreeBSD$");
 #include 
 #include 
 #endif
-#ifdef SCTP
+#if defined(SCTP) || defined(SCTP_SUPPORT)