[PATCH v2 1/2] docs: net: sysctl documentation cleanup

Abdelrahman Fekry posted 2 patches 3 months, 3 weeks ago
[PATCH v2 1/2] docs: net: sysctl documentation cleanup
Posted by Abdelrahman Fekry 3 months, 3 weeks ago
I noticed that some boolean parameters have missing default values
(enabled/disabled) in the documentation so i checked the initialization
functions to get their default values, also there was some inconsistency
in the representation. During the process , i stumbled upon a typo in
cipso_rbm_struct_valid instead of cipso_rbm_struct_valid.

Thanks for the review.

On Thu, 12 Jun 2025, Jacob Keller wrote:
> Would it make sense to use "0 (disabled)" and "1 (enabled)" with
> parenthesis for consistency with the default value?

Used as suggested.

On Fri, 13 Jun 2025, ALOK TIWARI wrote:
> for consistency
> remove extra space before colon
> Default: 1 (enabled)

Fixed. 

On Sat, 14 Jun 2025 10:46:29 -0700, Jakub Kicinski wrote:
> You need to repost the entire series. Make sure you read:
> https://www.kernel.org/doc/html/next/process/maintainer-netdev.html
> before you do.

Reposted the entire series, Thanks for you patiency.

Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com>
---
v2:
- Deleted space before colon for consistency
- Standardized more boolean representation (0/1 with enabled/disabled)

v1: https://lore.kernel.org/all/20250612162954.55843-2-abdelrahmanfekry375@gmail.com/
- Fixed typo in cipso_rbm_struct_valid
- Added missing default value declarations
- Standardized boolean representation (0/1 with enabled/disabled)
 Documentation/networking/ip-sysctl.rst | 47 ++++++++++++++++++++------
 1 file changed, 37 insertions(+), 10 deletions(-)

diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst
index 0f1251cce314..68778532faa5 100644
--- a/Documentation/networking/ip-sysctl.rst
+++ b/Documentation/networking/ip-sysctl.rst
@@ -8,14 +8,16 @@ IP Sysctl
 ==============================
 
 ip_forward - BOOLEAN
-	- 0 - disabled (default)
-	- not 0 - enabled
+	- 0 (disabled)
+	- not 0 (enabled)
 
 	Forward Packets between interfaces.
 
 	This variable is special, its change resets all configuration
 	parameters to their default state (RFC1122 for hosts, RFC1812
 	for routers)
+
+	Default: 0 (disabled)
 
 ip_default_ttl - INTEGER
 	Default value of TTL field (Time To Live) for outgoing (but not
@@ -75,7 +77,7 @@ fwmark_reflect - BOOLEAN
 	If unset, these packets have a fwmark of zero. If set, they have the
 	fwmark of the packet they are replying to.
 
-	Default: 0
+	Default: 0 (disabled)
 
 fib_multipath_use_neigh - BOOLEAN
 	Use status of existing neighbor entry when determining nexthop for
@@ -368,7 +370,7 @@ tcp_autocorking - BOOLEAN
 	queue. Applications can still use TCP_CORK for optimal behavior
 	when they know how/when to uncork their sockets.
 
-	Default : 1
+	Default: 1 (enabled)
 
 tcp_available_congestion_control - STRING
 	Shows the available congestion control choices that are registered.
@@ -407,6 +409,12 @@ tcp_congestion_control - STRING
 
 tcp_dsack - BOOLEAN
 	Allows TCP to send "duplicate" SACKs.
+
+	Possible values:
+		- 0 (disabled)
+		- 1 (enabled)
+
+	Default: 1 (enabled)
 
 tcp_early_retrans - INTEGER
 	Tail loss probe (TLP) converts RTOs occurring due to tail
@@ -623,6 +631,8 @@ tcp_no_metrics_save - BOOLEAN
 	increases overall performance, but may sometimes cause performance
 	degradation.  If set, TCP will not cache metrics on closing
 	connections.
+
+	Default: 0 (disabled)
 
 tcp_no_ssthresh_metrics_save - BOOLEAN
 	Controls whether TCP saves ssthresh metrics in the route cache.
@@ -684,6 +694,8 @@ tcp_retrans_collapse - BOOLEAN
 	Bug-to-bug compatibility with some broken printers.
 	On retransmit try to send bigger packets to work around bugs in
 	certain TCP stacks.
+
+	Default: 1 (enabled)
 
 tcp_retries1 - INTEGER
 	This value influences the time, after which TCP decides, that
@@ -739,6 +751,8 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
 
 tcp_sack - BOOLEAN
 	Enable select acknowledgments (SACKS).
+
+	Default: 1 (enabled)
 
 tcp_comp_sack_delay_ns - LONG INTEGER
 	TCP tries to reduce number of SACK sent, using a timer
@@ -766,7 +780,7 @@ tcp_backlog_ack_defer - BOOLEAN
 	one ACK for the whole queue. This helps to avoid potential
 	long latencies at end of a TCP socket syscall.
 
-	Default : true
+	Default: 1 (enabled)
 
 tcp_slow_start_after_idle - BOOLEAN
 	If set, provide RFC2861 behavior and time out the congestion
@@ -781,7 +795,7 @@ tcp_stdurg - BOOLEAN
 	Most hosts use the older BSD interpretation, so if you turn this on
 	Linux might not communicate correctly with them.
 
-	Default: FALSE
+	Default: 0 (disabled)
 
 tcp_synack_retries - INTEGER
 	Number of times SYNACKs for a passive TCP connection attempt will
@@ -1018,6 +1032,10 @@ tcp_tw_reuse_delay - UNSIGNED INTEGER
 
 tcp_window_scaling - BOOLEAN
 	Enable window scaling as defined in RFC1323.
+	- 0 (disabled).
+	- 1 (enabled).
+
+	Default: 1 (enabled)
 
 tcp_shrink_window - BOOLEAN
 	This changes how the TCP receive window is calculated.
@@ -1160,7 +1178,7 @@ tcp_plb_enabled - BOOLEAN
 	congestion measure (e.g. ce_ratio). PLB needs a congestion measure to
 	make repathing decisions.
 
-	Default: FALSE
+	Default: 0 (disabled)
 
 tcp_plb_idle_rehash_rounds - INTEGER
 	Number of consecutive congested rounds (RTT) seen after which
@@ -1352,7 +1370,7 @@ cipso_rbm_optfmt - BOOLEAN
 
 	Default: 0
 
-cipso_rbm_structvalid - BOOLEAN
+cipso_rbm_strictvalid - BOOLEAN
 	If set, do a very strict check of the CIPSO option when
 	ip_options_compile() is called.  If unset, relax the checks done during
 	ip_options_compile().  Either way is "safe" as errors are caught else
@@ -1543,7 +1561,7 @@ icmp_ignore_bogus_error_responses - BOOLEAN
 	If this is set to TRUE, the kernel will not give such warnings, which
 	will avoid log file clutter.
 
-	Default: 1
+	Default: 1 (enabled)
 
 icmp_errors_use_inbound_ifaddr - BOOLEAN
 
@@ -1560,7 +1578,7 @@ icmp_errors_use_inbound_ifaddr - BOOLEAN
 	then the primary address of the first non-loopback interface that
 	has one will be used regardless of this setting.
 
-	Default: 0
+	Default: 0 (disabled)
 
 igmp_max_memberships - INTEGER
 	Change the maximum number of multicast groups we can subscribe to.
@@ -1933,10 +1951,15 @@ mcast_resolicit - INTEGER
 
 disable_policy - BOOLEAN
 	Disable IPSEC policy (SPD) for this interface
+
+	Default: 0
+
 
 disable_xfrm - BOOLEAN
 	Disable IPSEC encryption on this interface, whatever the policy
 
+	Default: 0
+
 igmpv2_unsolicited_report_interval - INTEGER
 	The interval in milliseconds in which the next unsolicited
 	IGMPv1 or IGMPv2 report retransmit will take place.
@@ -1951,11 +1974,15 @@ igmpv3_unsolicited_report_interval - INTEGER
 
 ignore_routes_with_linkdown - BOOLEAN
         Ignore routes whose link is down when performing a FIB lookup.
+
+        Default: 0 (disabled)
 
 promote_secondaries - BOOLEAN
 	When a primary IP address is removed from this interface
 	promote a corresponding secondary IP address instead of
 	removing all the corresponding secondary IP addresses.
+
+	Default: 0 (disabled)
 
 drop_unicast_in_l2_multicast - BOOLEAN
 	Drop any unicast IP packets that are received in link-layer
-- 
2.25.1
Re: [PATCH v2 1/2] docs: net: sysctl documentation cleanup
Posted by Simon Horman 3 months, 3 weeks ago
On Sun, Jun 15, 2025 at 01:53:23AM +0300, Abdelrahman Fekry wrote:
> I noticed that some boolean parameters have missing default values
> (enabled/disabled) in the documentation so i checked the initialization
> functions to get their default values, also there was some inconsistency
> in the representation. During the process , i stumbled upon a typo in
> cipso_rbm_struct_valid instead of cipso_rbm_struct_valid.

Please consider using the imperative mood in patch discriptions.

As per [*] please denote the target tree for Networking patches.
In this case net-next seems appropriate.

  [PATCH net-next v3 1/2] ...

[*] https://docs.kernel.org/process/maintainer-netdev.html

And please make sure the patches apply cleanly, without fuzz, on
top of the target tree: this series seems to apply cleanly neither
on net or net-next.

The text below, up to (but not including your Signed-off-by line)
doesn't belong in the patch description. If you wish to include
notes or commentary of this nature then please do so below the
scissors ("---"). But I think the brief summary you already
have there is sufficient in this case - we can follow
the link to v1 for more information.

> 
> Thanks for the review.
> 
> On Thu, 12 Jun 2025, Jacob Keller wrote:
> > Would it make sense to use "0 (disabled)" and "1 (enabled)" with
> > parenthesis for consistency with the default value?
> 
> Used as suggested.
> 
> On Fri, 13 Jun 2025, ALOK TIWARI wrote:
> > for consistency
> > remove extra space before colon
> > Default: 1 (enabled)
> 
> Fixed. 
> 
> On Sat, 14 Jun 2025 10:46:29 -0700, Jakub Kicinski wrote:
> > You need to repost the entire series. Make sure you read:
> > https://www.kernel.org/doc/html/next/process/maintainer-netdev.html
> > before you do.
> 
> Reposted the entire series, Thanks for you patiency.
> 
> Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com>
> ---
> v2:
> - Deleted space before colon for consistency
> - Standardized more boolean representation (0/1 with enabled/disabled)
> 
> v1: https://lore.kernel.org/all/20250612162954.55843-2-abdelrahmanfekry375@gmail.com/
> - Fixed typo in cipso_rbm_struct_valid
> - Added missing default value declarations
> - Standardized boolean representation (0/1 with enabled/disabled)
>  Documentation/networking/ip-sysctl.rst | 47 ++++++++++++++++++++------
>  1 file changed, 37 insertions(+), 10 deletions(-)
> 
> diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst
> index 0f1251cce314..68778532faa5 100644
> --- a/Documentation/networking/ip-sysctl.rst
> +++ b/Documentation/networking/ip-sysctl.rst
> @@ -8,14 +8,16 @@ IP Sysctl
>  ==============================
>  
>  ip_forward - BOOLEAN
> -	- 0 - disabled (default)
> -	- not 0 - enabled
> +	- 0 (disabled)
> +	- not 0 (enabled)
>  
>  	Forward Packets between interfaces.
>  
>  	This variable is special, its change resets all configuration
>  	parameters to their default state (RFC1122 for hosts, RFC1812
>  	for routers)
> +
> +	Default: 0 (disabled)
>  
>  ip_default_ttl - INTEGER
>  	Default value of TTL field (Time To Live) for outgoing (but not
> @@ -75,7 +77,7 @@ fwmark_reflect - BOOLEAN
>  	If unset, these packets have a fwmark of zero. If set, they have the
>  	fwmark of the packet they are replying to.

Maybe it would be more consistent to describe this in terms
of enabled / disabled rather than set / unset.

>  
> -	Default: 0
> +	Default: 0 (disabled)
>  
>  fib_multipath_use_neigh - BOOLEAN
>  	Use status of existing neighbor entry when determining nexthop for
> @@ -368,7 +370,7 @@ tcp_autocorking - BOOLEAN
>  	queue. Applications can still use TCP_CORK for optimal behavior
>  	when they know how/when to uncork their sockets.
>  
> -	Default : 1
> +	Default: 1 (enabled)

For consistency, would it make sense to document the possible values here.

>  
>  tcp_available_congestion_control - STRING
>  	Shows the available congestion control choices that are registered.
> @@ -407,6 +409,12 @@ tcp_congestion_control - STRING
>  
>  tcp_dsack - BOOLEAN
>  	Allows TCP to send "duplicate" SACKs.
> +
> +	Possible values:
> +		- 0 (disabled)
> +		- 1 (enabled)

In the case of ip_forward, the possible values are not explicitly named
as such and appear at the top of the documentation for the parameter.

Here they are explicitly named possible values and appear below the
description of the parameter, but before documentation of the Default.
Elsewhere, e.g. ip_forward_use_pmtu, they appear after the documentation of
the Default. And sometimes, e.g. ip_default_ttl, the possible values are
documented at all.

Likewise, indentation and use of blank lines seems inconsistent.

Is there a value in cleaning this up too?

> +
> +	Default: 1 (enabled)
>  

...

-- 
pw-bot: changes-requested
Re: [PATCH v2 1/2] docs: net: sysctl documentation cleanup
Posted by Abdelrahman Fekry 3 months, 3 weeks ago
Thanks for the review


On Tue, Jun 17, 2025 at 9:31 PM Simon Horman <horms@kernel.org> wrote:
>
> On Sun, Jun 15, 2025 at 01:53:23AM +0300, Abdelrahman Fekry wrote:
> > I noticed that some boolean parameters have missing default values
> > (enabled/disabled) in the documentation so i checked the initialization
> > functions to get their default values, also there was some inconsistency
> > in the representation. During the process , i stumbled upon a typo in
> > cipso_rbm_struct_valid instead of cipso_rbm_struct_valid.
>
> Please consider using the imperative mood in patch discriptions.

Noted , will be used in v3.

> As per [*] please denote the target tree for Networking patches.
> In this case net-next seems appropriate.
>
>   [PATCH net-next v3 1/2] ...
>
> [*] https://docs.kernel.org/process/maintainer-netdev.html
>
> And please make sure the patches apply cleanly, without fuzz, on
> top of the target tree: this series seems to apply cleanly neither
> on net or net-next.

Noted, will make sure to denote the target tree and to test it first.

> The text below, up to (but not including your Signed-off-by line)
> doesn't belong in the patch description. If you wish to include
> notes or commentary of this nature then please do so below the
> scissors ("---"). But I think the brief summary you already
> have there is sufficient in this case - we can follow
> the link to v1 for more information.
>
> >
> > Thanks for the review.
> >
> > On Thu, 12 Jun 2025, Jacob Keller wrote:
> > > Would it make sense to use "0 (disabled)" and "1 (enabled)" with
> > > parenthesis for consistency with the default value?
> >
> > Used as suggested.
> >
> > On Fri, 13 Jun 2025, ALOK TIWARI wrote:
> > > for consistency
> > > remove extra space before colon
> > > Default: 1 (enabled)
> >
> > Fixed.
> >
> > On Sat, 14 Jun 2025 10:46:29 -0700, Jakub Kicinski wrote:
> > > You need to repost the entire series. Make sure you read:
> > > https://www.kernel.org/doc/html/next/process/maintainer-netdev.html
> > > before you do.
> >
> > Reposted the entire series, Thanks for you patiency.
> >
> > Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com>
> > ---

Noted, Thanks.

> > diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst
> > index 0f1251cce314..68778532faa5 100644
> > --- a/Documentation/networking/ip-sysctl.rst
> > +++ b/Documentation/networking/ip-sysctl.rst
> > @@ -8,14 +8,16 @@ IP Sysctl
> >  ==============================
> >
> >  ip_forward - BOOLEAN
> > -     - 0 - disabled (default)
> > -     - not 0 - enabled
> > +     - 0 (disabled)
> > +     - not 0 (enabled)
> >
> >       Forward Packets between interfaces.
> >
> >       This variable is special, its change resets all configuration
> >       parameters to their default state (RFC1122 for hosts, RFC1812
> >       for routers)
> > +
> > +     Default: 0 (disabled)
> >
> >  ip_default_ttl - INTEGER
> >       Default value of TTL field (Time To Live) for outgoing (but not
> > @@ -75,7 +77,7 @@ fwmark_reflect - BOOLEAN
> >       If unset, these packets have a fwmark of zero. If set, they have the
> >       fwmark of the packet they are replying to.
>
> Maybe it would be more consistent to describe this in terms
> of enabled / disabled rather than set / unset.

Will do this  here and in other parameters to ensure consistency.

>
> >
> > -     Default: 0
> > +     Default: 0 (disabled)
> >
> >  fib_multipath_use_neigh - BOOLEAN
> >       Use status of existing neighbor entry when determining nexthop for
> > @@ -368,7 +370,7 @@ tcp_autocorking - BOOLEAN
> >       queue. Applications can still use TCP_CORK for optimal behavior
> >       when they know how/when to uncork their sockets.
> >
> > -     Default : 1
> > +     Default: 1 (enabled)
>
> For consistency, would it make sense to document the possible values here.

Noted, will document possible values here and in other parameters for
consistency.

>
> >
> >  tcp_available_congestion_control - STRING
> >       Shows the available congestion control choices that are registered.
> > @@ -407,6 +409,12 @@ tcp_congestion_control - STRING
> >
> >  tcp_dsack - BOOLEAN
> >       Allows TCP to send "duplicate" SACKs.
> > +
> > +     Possible values:
> > +             - 0 (disabled)
> > +             - 1 (enabled)
>
> In the case of ip_forward, the possible values are not explicitly named
> as such and appear at the top of the documentation for the parameter.
>
> Here they are explicitly named possible values and appear below the
> description of the parameter, but before documentation of the Default.
> Elsewhere, e.g. ip_forward_use_pmtu, they appear after the documentation of
> the Default. And sometimes, e.g. ip_default_ttl, the possible values are
> documented at all.
>

Noted, will make sure that all representation follow the same appearance,
first the description then possible values then default.