Commit 0bc65a28 authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller

tcp: Namespace-ify sysctl_tcp_fack

Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 65c9410c
...@@ -136,6 +136,7 @@ struct netns_ipv4 { ...@@ -136,6 +136,7 @@ struct netns_ipv4 {
int sysctl_tcp_stdurg; int sysctl_tcp_stdurg;
int sysctl_tcp_rfc1337; int sysctl_tcp_rfc1337;
int sysctl_tcp_abort_on_overflow; int sysctl_tcp_abort_on_overflow;
int sysctl_tcp_fack;
struct inet_timewait_death_row tcp_death_row; struct inet_timewait_death_row tcp_death_row;
int sysctl_max_syn_backlog; int sysctl_max_syn_backlog;
int sysctl_tcp_fastopen; int sysctl_tcp_fastopen;
......
...@@ -244,7 +244,6 @@ void tcp_time_wait(struct sock *sk, int state, int timeo); ...@@ -244,7 +244,6 @@ void tcp_time_wait(struct sock *sk, int state, int timeo);
/* sysctl variables for tcp */ /* sysctl variables for tcp */
extern int sysctl_tcp_max_orphans; extern int sysctl_tcp_max_orphans;
extern int sysctl_tcp_fack;
extern int sysctl_tcp_reordering; extern int sysctl_tcp_reordering;
extern int sysctl_tcp_max_reordering; extern int sysctl_tcp_max_reordering;
extern int sysctl_tcp_dsack; extern int sysctl_tcp_dsack;
......
...@@ -414,13 +414,6 @@ static struct ctl_table ipv4_table[] = { ...@@ -414,13 +414,6 @@ static struct ctl_table ipv4_table[] = {
.mode = 0644, .mode = 0644,
.proc_handler = proc_dointvec_jiffies, .proc_handler = proc_dointvec_jiffies,
}, },
{
.procname = "tcp_fack",
.data = &sysctl_tcp_fack,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = proc_dointvec
},
{ {
.procname = "tcp_max_reordering", .procname = "tcp_max_reordering",
.data = &sysctl_tcp_max_reordering, .data = &sysctl_tcp_max_reordering,
...@@ -1145,6 +1138,13 @@ static struct ctl_table ipv4_net_table[] = { ...@@ -1145,6 +1138,13 @@ static struct ctl_table ipv4_net_table[] = {
.mode = 0644, .mode = 0644,
.proc_handler = proc_dointvec .proc_handler = proc_dointvec
}, },
{
.procname = "tcp_fack",
.data = &init_net.ipv4.sysctl_tcp_fack,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = proc_dointvec
},
{ } { }
}; };
......
...@@ -2517,7 +2517,7 @@ static int tcp_repair_options_est(struct sock *sk, ...@@ -2517,7 +2517,7 @@ static int tcp_repair_options_est(struct sock *sk,
return -EINVAL; return -EINVAL;
tp->rx_opt.sack_ok |= TCP_SACK_SEEN; tp->rx_opt.sack_ok |= TCP_SACK_SEEN;
if (sysctl_tcp_fack) if (sock_net(sk)->ipv4.sysctl_tcp_fack)
tcp_enable_fack(tp); tcp_enable_fack(tp);
break; break;
case TCPOPT_TIMESTAMP: case TCPOPT_TIMESTAMP:
......
...@@ -79,7 +79,6 @@ ...@@ -79,7 +79,6 @@
#include <linux/unaligned/access_ok.h> #include <linux/unaligned/access_ok.h>
#include <linux/static_key.h> #include <linux/static_key.h>
int sysctl_tcp_fack __read_mostly;
int sysctl_tcp_max_reordering __read_mostly = 300; int sysctl_tcp_max_reordering __read_mostly = 300;
int sysctl_tcp_dsack __read_mostly = 1; int sysctl_tcp_dsack __read_mostly = 1;
int sysctl_tcp_app_win __read_mostly = 31; int sysctl_tcp_app_win __read_mostly = 31;
...@@ -5720,7 +5719,7 @@ static int tcp_rcv_synsent_state_process(struct sock *sk, struct sk_buff *skb, ...@@ -5720,7 +5719,7 @@ static int tcp_rcv_synsent_state_process(struct sock *sk, struct sk_buff *skb,
tp->tcp_header_len = sizeof(struct tcphdr); tp->tcp_header_len = sizeof(struct tcphdr);
} }
if (tcp_is_sack(tp) && sysctl_tcp_fack) if (tcp_is_sack(tp) && sock_net(sk)->ipv4.sysctl_tcp_fack)
tcp_enable_fack(tp); tcp_enable_fack(tp);
tcp_sync_mss(sk, icsk->icsk_pmtu_cookie); tcp_sync_mss(sk, icsk->icsk_pmtu_cookie);
......
...@@ -510,7 +510,7 @@ struct sock *tcp_create_openreq_child(const struct sock *sk, ...@@ -510,7 +510,7 @@ struct sock *tcp_create_openreq_child(const struct sock *sk,
newtp->rx_opt.tstamp_ok = ireq->tstamp_ok; newtp->rx_opt.tstamp_ok = ireq->tstamp_ok;
if ((newtp->rx_opt.sack_ok = ireq->sack_ok) != 0) { if ((newtp->rx_opt.sack_ok = ireq->sack_ok) != 0) {
if (sysctl_tcp_fack) if (sock_net(sk)->ipv4.sysctl_tcp_fack)
tcp_enable_fack(newtp); tcp_enable_fack(newtp);
} }
newtp->window_clamp = req->rsk_window_clamp; newtp->window_clamp = req->rsk_window_clamp;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment