Patchwork [net] tipc: set sysctl_tipc_rmem and named_timeout right range

login
register
mail settings
Submitter Zhiqiang Liu
Date April 16, 2019, 5:10 a.m.
Message ID <aa1feff9-be78-7569-4a26-a5e2ff7723b1@huawei.com>
Download mbox | patch
Permalink /patch/773883/
State New
Headers show

Comments

Zhiqiang Liu - April 16, 2019, 5:10 a.m.
From: Jie Liu <liujie165@huawei.com>

We find that sysctl_tipc_rmem and named_timeout do not have the right minimum
setting. sysctl_tipc_rmem should be larger than zero, like sysctl_tcp_rmem.
And named_timeout as a timeout setting should be not less than zero.

Fixes: cc79dd1ba9c10 ("tipc: change socket buffer overflow control to respect sk_rcvbuf")
Fixes: a5325ae5b8bff ("tipc: add name distributor resiliency queue")
Signed-off-by: Jie Liu <liujie165@huawei.com>
Reported-by: Qiang Ning <ningqiang1@huawei.com>
Reviewed-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>
---
 net/tipc/sysctl.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
David Miller - April 17, 2019, 4:32 a.m.
From: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Date: Tue, 16 Apr 2019 13:10:09 +0800

> From: Jie Liu <liujie165@huawei.com>
> 
> We find that sysctl_tipc_rmem and named_timeout do not have the right minimum
> setting. sysctl_tipc_rmem should be larger than zero, like sysctl_tcp_rmem.
> And named_timeout as a timeout setting should be not less than zero.
> 
> Fixes: cc79dd1ba9c10 ("tipc: change socket buffer overflow control to respect sk_rcvbuf")
> Fixes: a5325ae5b8bff ("tipc: add name distributor resiliency queue")
> Signed-off-by: Jie Liu <liujie165@huawei.com>
> Reported-by: Qiang Ning <ningqiang1@huawei.com>
> Reviewed-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
> Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>

Applied.

Patch

diff --git a/net/tipc/sysctl.c b/net/tipc/sysctl.c
index 3481e4906bd6..9df82a573aa7 100644
--- a/net/tipc/sysctl.c
+++ b/net/tipc/sysctl.c
@@ -38,6 +38,8 @@ 

 #include <linux/sysctl.h>

+static int zero;
+static int one = 1;
 static struct ctl_table_header *tipc_ctl_hdr;

 static struct ctl_table tipc_table[] = {
@@ -46,14 +48,16 @@  static struct ctl_table tipc_table[] = {
 		.data		= &sysctl_tipc_rmem,
 		.maxlen		= sizeof(sysctl_tipc_rmem),
 		.mode		= 0644,
-		.proc_handler	= proc_dointvec,
+		.proc_handler	= proc_dointvec_minmax,
+		.extra1         = &one,
 	},
 	{
 		.procname	= "named_timeout",
 		.data		= &sysctl_tipc_named_timeout,
 		.maxlen		= sizeof(sysctl_tipc_named_timeout),
 		.mode		= 0644,
-		.proc_handler	= proc_dointvec,
+		.proc_handler	= proc_dointvec_minmax,
+		.extra1         = &zero,
 	},
 	{
 		.procname       = "sk_filter",