mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:46:16 +00:00
net/smc: add sysctl for smc_limit_hs
In commit48b6190a00
("net/smc: Limit SMC visits when handshake workqueue congested"), we introduce a mechanism to put constraint on SMC connections visit according to the pressure of SMC handshake process. At that time, we believed that controlling the feature through netlink was sufficient. However, most people have realized now that netlink is not convenient in container scenarios, and sysctl is a more suitable approach. In addition, since commit462791bbfa
("net/smc: add sysctl interface for SMC") had introcuded smc_sysctl_net_init(), it is reasonable for us to initialize limit_smc_hs in it instead of initializing it in smc_pnet_net_int(). Signed-off-by: D. Wythe <alibuda@linux.alibaba.com> Reviewed-by: Wen Gu <guwen@linux.alibaba.com> Reviewed-by: Jan Karcher <jaka@linux.ibm.com> Link: https://patch.msgid.link/1725590135-5631-1-git-send-email-alibuda@linux.alibaba.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
0246388b9b
commit
f8406a2fd2
@ -887,9 +887,6 @@ int smc_pnet_net_init(struct net *net)
|
||||
|
||||
smc_pnet_create_pnetids_list(net);
|
||||
|
||||
/* disable handshake limitation by default */
|
||||
net->smc.limit_smc_hs = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -90,6 +90,15 @@ static struct ctl_table smc_table[] = {
|
||||
.extra1 = &conns_per_lgr_min,
|
||||
.extra2 = &conns_per_lgr_max,
|
||||
},
|
||||
{
|
||||
.procname = "limit_smc_hs",
|
||||
.data = &init_net.smc.limit_smc_hs,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.extra1 = SYSCTL_ZERO,
|
||||
.extra2 = SYSCTL_ONE,
|
||||
},
|
||||
};
|
||||
|
||||
int __net_init smc_sysctl_net_init(struct net *net)
|
||||
@ -121,6 +130,8 @@ int __net_init smc_sysctl_net_init(struct net *net)
|
||||
WRITE_ONCE(net->smc.sysctl_rmem, net_smc_rmem_init);
|
||||
net->smc.sysctl_max_links_per_lgr = SMC_LINKS_PER_LGR_MAX_PREFER;
|
||||
net->smc.sysctl_max_conns_per_lgr = SMC_CONN_PER_LGR_PREFER;
|
||||
/* disable handshake limitation by default */
|
||||
net->smc.limit_smc_hs = 0;
|
||||
|
||||
return 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user