* [PATCH 0/2] docs: net: sysctl documentation improvements @ 2025-06-12 16:29 Abdelrahman Fekry 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry 2025-06-12 16:29 ` [PATCH 2/2] docs: net: clarify sysctl value constraints Abdelrahman Fekry 0 siblings, 2 replies; 8+ messages in thread From: Abdelrahman Fekry @ 2025-06-12 16:29 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees, Abdelrahman Fekry This series cleans up and clarifies networking sysctl documentation, specially the boolean parameters: Patch 1: Fixes typos, adds missing defaults, and standardizes boolean representation. Patch 2: Adds value constraint clarifications for parameters with u8 implementation details , fixes typos. Abdelrahman Fekry (2): docs: net: sysctl documentation cleanup docs: net: clarify sysctl value constraints Documentation/networking/ip-sysctl.rst | 87 ++++++++++++++++++++++---- 1 file changed, 76 insertions(+), 11 deletions(-) -- 2.25.1 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] docs: net: sysctl documentation cleanup 2025-06-12 16:29 [PATCH 0/2] docs: net: sysctl documentation improvements Abdelrahman Fekry @ 2025-06-12 16:29 ` Abdelrahman Fekry 2025-06-12 17:18 ` Jacob Keller ` (2 more replies) 2025-06-12 16:29 ` [PATCH 2/2] docs: net: clarify sysctl value constraints Abdelrahman Fekry 1 sibling, 3 replies; 8+ messages in thread From: Abdelrahman Fekry @ 2025-06-12 16:29 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees, Abdelrahman Fekry 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. - Fixed typo in cipso_rbm_struct_valid - Added missing default value declarations - Standardized boolean representation (0/1 with enabled/disabled) Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> --- Documentation/networking/ip-sysctl.rst | 37 +++++++++++++++++++++----- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst index 0f1251cce314..f7ff8c53f412 100644 --- a/Documentation/networking/ip-sysctl.rst +++ b/Documentation/networking/ip-sysctl.rst @@ -75,7 +75,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 +368,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 +407,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 +629,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 +692,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 +749,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 +778,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 +793,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 +1030,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 +1176,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 +1368,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 @@ -1933,10 +1949,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 +1972,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 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] docs: net: sysctl documentation cleanup 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry @ 2025-06-12 17:18 ` Jacob Keller 2025-06-13 6:07 ` ALOK TIWARI 2025-06-14 9:25 ` [PATCH v2 " Abdelrahman Fekry 2 siblings, 0 replies; 8+ messages in thread From: Jacob Keller @ 2025-06-12 17:18 UTC (permalink / raw) To: Abdelrahman Fekry, davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees On 6/12/2025 9:29 AM, 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. > > - Fixed typo in cipso_rbm_struct_valid > - Added missing default value declarations > - Standardized boolean representation (0/1 with enabled/disabled) > > Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> > --- Thank you for the documentation improvements! I do think its a bit more clear to include the "(enabled)" or "(disabled)". Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> > Documentation/networking/ip-sysctl.rst | 37 +++++++++++++++++++++----- > 1 file changed, 31 insertions(+), 6 deletions(-) > > diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst > index 0f1251cce314..f7ff8c53f412 100644 > --- a/Documentation/networking/ip-sysctl.rst > +++ b/Documentation/networking/ip-sysctl.rst > @@ -407,6 +407,12 @@ tcp_congestion_control - STRING > > tcp_dsack - BOOLEAN > Allows TCP to send "duplicate" SACKs. > + Possible values: > + - 0 disabled > + - 1 enabled > + > + Default: 1 (enabled) > Would it make sense to use "0 (disabled)" and "1 (enabled)" with parenthesis for consistency with the default value? ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] docs: net: sysctl documentation cleanup 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry 2025-06-12 17:18 ` Jacob Keller @ 2025-06-13 6:07 ` ALOK TIWARI 2025-06-14 9:25 ` [PATCH v2 " Abdelrahman Fekry 2 siblings, 0 replies; 8+ messages in thread From: ALOK TIWARI @ 2025-06-13 6:07 UTC (permalink / raw) To: Abdelrahman Fekry, davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees On 12-06-2025 21:59, 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. > > - Fixed typo in cipso_rbm_struct_valid > - Added missing default value declarations > - Standardized boolean representation (0/1 with enabled/disabled) > > Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> > --- > Documentation/networking/ip-sysctl.rst | 37 +++++++++++++++++++++----- > 1 file changed, 31 insertions(+), 6 deletions(-) > > diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst > index 0f1251cce314..f7ff8c53f412 100644 > --- a/Documentation/networking/ip-sysctl.rst > +++ b/Documentation/networking/ip-sysctl.rst > @@ -75,7 +75,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 +368,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 remove extra space before colon Default: 1 (enabled) > > tcp_available_congestion_control - STRING > Shows the available congestion control choices that are registered. > @@ -407,6 +407,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 +629,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 +692,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 +749,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 +778,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) Default: 1 (enabled) > > tcp_slow_start_after_idle - BOOLEAN > If set, provide RFC2861 behavior and time out the congestion > @@ -781,7 +793,7 @@ tcp_stdurg - BOOLEAN > Most hosts use the older BSD interpretation, so if you turn this on > Linux might not communicate correctly with them. Thanks, Alok ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/2] docs: net: sysctl documentation cleanup 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry 2025-06-12 17:18 ` Jacob Keller 2025-06-13 6:07 ` ALOK TIWARI @ 2025-06-14 9:25 ` Abdelrahman Fekry 2025-06-14 17:46 ` Jakub Kicinski 2 siblings, 1 reply; 8+ messages in thread From: Abdelrahman Fekry @ 2025-06-14 9:25 UTC (permalink / raw) To: corbet, davem, edumazet, horms, kuba, pabeni Cc: abdelrahmanfekry375, linux-doc, linux-kernel-mentees, linux-kernel, netdev, skhan Changes in v2: - Deleted space before colon for consistency - Standardized more boolean representation (0/1 with enabled/disabled) Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> --- 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 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] docs: net: sysctl documentation cleanup 2025-06-14 9:25 ` [PATCH v2 " Abdelrahman Fekry @ 2025-06-14 17:46 ` Jakub Kicinski 0 siblings, 0 replies; 8+ messages in thread From: Jakub Kicinski @ 2025-06-14 17:46 UTC (permalink / raw) To: Abdelrahman Fekry Cc: corbet, davem, edumazet, horms, pabeni, linux-doc, linux-kernel-mentees, linux-kernel, netdev, skhan On Sat, 14 Jun 2025 12:25:42 +0300 Abdelrahman Fekry wrote: > Changes in v2: > - Deleted space before colon for consistency > - Standardized more boolean representation (0/1 with enabled/disabled) 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. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] docs: net: clarify sysctl value constraints 2025-06-12 16:29 [PATCH 0/2] docs: net: sysctl documentation improvements Abdelrahman Fekry 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry @ 2025-06-12 16:29 ` Abdelrahman Fekry 2025-06-12 17:19 ` Jacob Keller 1 sibling, 1 reply; 8+ messages in thread From: Abdelrahman Fekry @ 2025-06-12 16:29 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees, Abdelrahman Fekry So, i also noticed that some of the parameters represented as boolean have no value constrain checks and accept integer values due to u8 implementation, so i wrote a note for every boolean parameter that have no constrain checks in code. and fixed a typo in fmwark instead of fwmark. Added notes for 19 confirmed parameters, Verified by code inspection and runtime testing. Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> --- Documentation/networking/ip-sysctl.rst | 50 +++++++++++++++++++++++--- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst index f7ff8c53f412..99e786915204 100644 --- a/Documentation/networking/ip-sysctl.rst +++ b/Documentation/networking/ip-sysctl.rst @@ -68,6 +68,8 @@ ip_forward_use_pmtu - BOOLEAN - 0 - disabled - 1 - enabled + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. fwmark_reflect - BOOLEAN Controls the fwmark of kernel-generated IPv4 reply packets that are not @@ -89,6 +91,8 @@ fib_multipath_use_neigh - BOOLEAN - 0 - disabled - 1 - enabled + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. fib_multipath_hash_policy - INTEGER Controls which hash policy to use for multipath routes. Only valid @@ -489,6 +493,8 @@ tcp_fwmark_accept - BOOLEAN unaffected. Default: 0 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_invalid_ratelimit - INTEGER Limit the maximal rate for sending duplicate acknowledgments @@ -603,6 +609,8 @@ tcp_moderate_rcvbuf - BOOLEAN automatically size the buffer (no greater than tcp_rmem[2]) to match the size required by the path for full throughput. Enabled by default. + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_mtu_probing - INTEGER Controls TCP Packetization-Layer Path MTU Discovery. Takes three @@ -636,6 +644,8 @@ tcp_no_ssthresh_metrics_save - BOOLEAN Controls whether TCP saves ssthresh metrics in the route cache. Default is 1, which disables ssthresh metrics. + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_orphan_retries - INTEGER This value influences the timeout of a locally closed TCP connection, @@ -703,7 +713,9 @@ tcp_retries1 - INTEGER RFC 1122 recommends at least 3 retransmissions, which is the default. - + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + tcp_retries2 - INTEGER This value influences the timeout of an alive TCP connection, when RTO retransmissions remain unacknowledged. @@ -751,6 +763,8 @@ tcp_sack - BOOLEAN Enable select acknowledgments (SACKS). Default: 1 (enabled) + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_comp_sack_delay_ns - LONG INTEGER TCP tries to reduce number of SACK sent, using a timer @@ -787,6 +801,8 @@ tcp_slow_start_after_idle - BOOLEAN be timed out after an idle period. Default: 1 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_stdurg - BOOLEAN Use the Host requirements interpretation of the TCP urgent pointer field. @@ -794,6 +810,8 @@ tcp_stdurg - BOOLEAN Linux might not communicate correctly with them. Default: 0 (disabled) + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_synack_retries - INTEGER Number of times SYNACKs for a passive TCP connection attempt will @@ -1034,6 +1052,8 @@ tcp_window_scaling - BOOLEAN - 1 - Enabled. Default: 1 (enabled) + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_shrink_window - BOOLEAN This changes how the TCP receive window is calculated. @@ -1049,6 +1069,8 @@ tcp_shrink_window - BOOLEAN scaling factor is also in effect. Default: 0 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. tcp_wmem - vector of 3 INTEGERs: min, default, max min: Amount of memory reserved for send buffers for TCP sockets. @@ -1104,7 +1126,9 @@ tcp_thin_linear_timeouts - BOOLEAN Documentation/networking/tcp-thin.rst Default: 0 - + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + tcp_limit_output_bytes - INTEGER Controls TCP Small Queue limit per tcp socket. TCP bulk sender tends to increase packets in flight until it @@ -1367,6 +1391,9 @@ cipso_rbm_optfmt - BOOLEAN categories in order to make the packet data 32-bit aligned. Default: 0 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + cipso_rbm_strictvalid - BOOLEAN If set, do a very strict check of the CIPSO option when @@ -1377,6 +1404,9 @@ cipso_rbm_strictvalid - BOOLEAN with other implementations that require strict checking. Default: 0 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + IP Variables ============ @@ -1437,6 +1467,9 @@ ip_nonlocal_bind - BOOLEAN which can be quite useful - but may break some applications. Default: 0 + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + ip_autobind_reuse - BOOLEAN By default, bind() does not select the ports automatically even if @@ -1447,6 +1480,8 @@ ip_autobind_reuse - BOOLEAN option should only be set by experts. Default: 0 + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + ip_dynaddr - INTEGER If set non-zero, enables support for dynamic addresses. If set to a non-zero value larger than 1, a kernel log @@ -1476,13 +1511,16 @@ tcp_early_demux - BOOLEAN Enable early demux for established TCP sockets. Default: 1 + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + udp_early_demux - BOOLEAN Enable early demux for connected UDP sockets. Disable this if your system could experience more unconnected load. Default: 1 - + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + icmp_echo_ignore_all - BOOLEAN If set non-zero, then the kernel will ignore all ICMP ECHO requests sent to it. @@ -1815,7 +1853,7 @@ src_valid_mark - BOOLEAN lookup. This permits rp_filter to function when the fwmark is used for routing traffic in both directions. - This setting also affects the utilization of fmwark when + This setting also affects the utilization of fwmark when performing source address selection for ICMP replies, or determining addresses stored for the IPOPT_TS_TSANDADDR and IPOPT_RR IP options. @@ -2324,7 +2362,9 @@ fwmark_reflect - BOOLEAN fwmark of the packet they are replying to. Default: 0 - + + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. + ``conf/interface/*``: Change special settings per interface. -- 2.25.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] docs: net: clarify sysctl value constraints 2025-06-12 16:29 ` [PATCH 2/2] docs: net: clarify sysctl value constraints Abdelrahman Fekry @ 2025-06-12 17:19 ` Jacob Keller 0 siblings, 0 replies; 8+ messages in thread From: Jacob Keller @ 2025-06-12 17:19 UTC (permalink / raw) To: Abdelrahman Fekry, davem, edumazet, kuba, pabeni, horms, corbet Cc: netdev, linux-doc, linux-kernel, skhan, linux-kernel-mentees On 6/12/2025 9:29 AM, Abdelrahman Fekry wrote: > So, i also noticed that some of the parameters represented > as boolean have no value constrain checks and accept integer > values due to u8 implementation, so i wrote a note for every > boolean parameter that have no constrain checks in code. and > fixed a typo in fmwark instead of fwmark. > > Added notes for 19 confirmed parameters, > Verified by code inspection and runtime testing. > > Signed-off-by: Abdelrahman Fekry <abdelrahmanfekry375@gmail.com> > --- > Documentation/networking/ip-sysctl.rst | 50 +++++++++++++++++++++++--- > 1 file changed, 45 insertions(+), 5 deletions(-) > > diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst > index f7ff8c53f412..99e786915204 100644 > --- a/Documentation/networking/ip-sysctl.rst > +++ b/Documentation/networking/ip-sysctl.rst > @@ -68,6 +68,8 @@ ip_forward_use_pmtu - BOOLEAN > > - 0 - disabled > - 1 - enabled > + > + note: Accepts integer values (0-255) but only 0/1 have defined behaviour. > Hm. In many cases any non-zero value might be interpreted as "enabled" I suppose that is simply "undefined behavior"? ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-06-14 17:46 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-06-12 16:29 [PATCH 0/2] docs: net: sysctl documentation improvements Abdelrahman Fekry 2025-06-12 16:29 ` [PATCH 1/2] docs: net: sysctl documentation cleanup Abdelrahman Fekry 2025-06-12 17:18 ` Jacob Keller 2025-06-13 6:07 ` ALOK TIWARI 2025-06-14 9:25 ` [PATCH v2 " Abdelrahman Fekry 2025-06-14 17:46 ` Jakub Kicinski 2025-06-12 16:29 ` [PATCH 2/2] docs: net: clarify sysctl value constraints Abdelrahman Fekry 2025-06-12 17:19 ` Jacob Keller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).