OSDN Git Service

net/smc: Unbind r/w buffer size from clcsock and make them tunable
authorTony Lu <tonylu@linux.alibaba.com>
Tue, 20 Sep 2022 09:52:22 +0000 (17:52 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 22 Sep 2022 10:58:21 +0000 (12:58 +0200)
commit0227f058aa29f5ab6f6ec79c3a36ae41f1e03a13
tree024a70c93ec33d4e59ad7457e1a8856bbf371770
parent77eee32514314209961af5c2982e871ecb364445
net/smc: Unbind r/w buffer size from clcsock and make them tunable

Currently, SMC uses smc->sk.sk_{rcv|snd}buf to create buffers for
send buffer and RMB. And the values of buffer size are from tcp_{w|r}mem
in clcsock.

The buffer size from TCP socket doesn't fit SMC well. Generally, buffers
are usually larger than TCP for SMC-R/-D to get higher performance, for
they are different underlay devices and paths.

So this patch unbinds buffer size from TCP, and introduces two sysctl
knobs to tune them independently. Also, these knobs are per net
namespace and work for containers.

Signed-off-by: Tony Lu <tonylu@linux.alibaba.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Documentation/networking/smc-sysctl.rst
include/net/netns/smc.h
net/smc/af_smc.c
net/smc/smc_core.c
net/smc/smc_sysctl.c