162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci==========
462306a36Sopenharmony_ciSMC Sysctl
562306a36Sopenharmony_ci==========
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci/proc/sys/net/smc/* Variables
862306a36Sopenharmony_ci=============================
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ciautocorking_size - INTEGER
1162306a36Sopenharmony_ci	Setting SMC auto corking size:
1262306a36Sopenharmony_ci	SMC auto corking is like TCP auto corking from the application's
1362306a36Sopenharmony_ci	perspective of view. When applications do consecutive small
1462306a36Sopenharmony_ci	write()/sendmsg() system calls, we try to coalesce these small writes
1562306a36Sopenharmony_ci	as much as possible, to lower total amount of CDC and RDMA Write been
1662306a36Sopenharmony_ci	sent.
1762306a36Sopenharmony_ci	autocorking_size limits the maximum corked bytes that can be sent to
1862306a36Sopenharmony_ci	the under device in 1 single sending. If set to 0, the SMC auto corking
1962306a36Sopenharmony_ci	is disabled.
2062306a36Sopenharmony_ci	Applications can still use TCP_CORK for optimal behavior when they
2162306a36Sopenharmony_ci	know how/when to uncork their sockets.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci	Default: 64K
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_cismcr_buf_type - INTEGER
2662306a36Sopenharmony_ci        Controls which type of sndbufs and RMBs to use in later newly created
2762306a36Sopenharmony_ci        SMC-R link group. Only for SMC-R.
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci        Default: 0 (physically contiguous sndbufs and RMBs)
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci        Possible values:
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci        - 0 - Use physically contiguous buffers
3462306a36Sopenharmony_ci        - 1 - Use virtually contiguous buffers
3562306a36Sopenharmony_ci        - 2 - Mixed use of the two types. Try physically contiguous buffers first.
3662306a36Sopenharmony_ci          If not available, use virtually contiguous buffers then.
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_cismcr_testlink_time - INTEGER
3962306a36Sopenharmony_ci	How frequently SMC-R link sends out TEST_LINK LLC messages to confirm
4062306a36Sopenharmony_ci	viability, after the last activity of connections on it. Value 0 means
4162306a36Sopenharmony_ci	disabling TEST_LINK.
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci	Default: 30 seconds.
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ciwmem - INTEGER
4662306a36Sopenharmony_ci	Initial size of send buffer used by SMC sockets.
4762306a36Sopenharmony_ci	The default value inherits from net.ipv4.tcp_wmem[1].
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci	The minimum value is 16KiB and there is no hard limit for max value, but
5062306a36Sopenharmony_ci	only allowed 512KiB for SMC-R and 1MiB for SMC-D.
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci	Default: 16K
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_cirmem - INTEGER
5562306a36Sopenharmony_ci	Initial size of receive buffer (RMB) used by SMC sockets.
5662306a36Sopenharmony_ci	The default value inherits from net.ipv4.tcp_rmem[1].
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci	The minimum value is 16KiB and there is no hard limit for max value, but
5962306a36Sopenharmony_ci	only allowed 512KiB for SMC-R and 1MiB for SMC-D.
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci	Default: 128K
62