diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h index 2e93a00ed126..c58d9f9dbc23 100644 --- a/include/net/netns/ipv4.h +++ b/include/net/netns/ipv4.h @@ -115,11 +115,11 @@ struct netns_ipv4 { u8 sysctl_nexthop_compat_mode; u8 sysctl_fwmark_reflect; - u8 sysctl_tcp_fwmark_accept; + int sysctl_tcp_fwmark_accept; #ifdef CONFIG_NET_L3_MASTER_DEV - u8 sysctl_tcp_l3mdev_accept; + int sysctl_tcp_l3mdev_accept; #endif - u8 sysctl_tcp_mtu_probing; + int sysctl_tcp_mtu_probing; int sysctl_tcp_mtu_probe_floor; int sysctl_tcp_base_mss; int sysctl_tcp_min_snd_mss; @@ -127,47 +127,46 @@ struct netns_ipv4 { u32 sysctl_tcp_probe_interval; int sysctl_tcp_keepalive_time; + int sysctl_tcp_keepalive_probes; int sysctl_tcp_keepalive_intvl; - u8 sysctl_tcp_keepalive_probes; - u8 sysctl_tcp_syn_retries; - u8 sysctl_tcp_synack_retries; - u8 sysctl_tcp_syncookies; + int sysctl_tcp_syn_retries; + int sysctl_tcp_synack_retries; + int sysctl_tcp_syncookies; int sysctl_tcp_reordering; - u8 sysctl_tcp_retries1; - u8 sysctl_tcp_retries2; - u8 sysctl_tcp_orphan_retries; - u8 sysctl_tcp_tw_reuse; + int sysctl_tcp_retries1; + int sysctl_tcp_retries2; + int sysctl_tcp_orphan_retries; int sysctl_tcp_fin_timeout; unsigned int sysctl_tcp_notsent_lowat; - u8 sysctl_tcp_sack; - u8 sysctl_tcp_window_scaling; - u8 sysctl_tcp_timestamps; - u8 sysctl_tcp_early_retrans; - u8 sysctl_tcp_recovery; - u8 sysctl_tcp_thin_linear_timeouts; - u8 sysctl_tcp_slow_start_after_idle; - u8 sysctl_tcp_retrans_collapse; - u8 sysctl_tcp_stdurg; - u8 sysctl_tcp_rfc1337; - u8 sysctl_tcp_abort_on_overflow; - u8 sysctl_tcp_fack; /* obsolete */ + int sysctl_tcp_tw_reuse; + int sysctl_tcp_sack; + int sysctl_tcp_window_scaling; + int sysctl_tcp_timestamps; + int sysctl_tcp_early_retrans; + int sysctl_tcp_recovery; + int sysctl_tcp_thin_linear_timeouts; + int sysctl_tcp_slow_start_after_idle; + int sysctl_tcp_retrans_collapse; + int sysctl_tcp_stdurg; + int sysctl_tcp_rfc1337; + int sysctl_tcp_abort_on_overflow; + int sysctl_tcp_fack; int sysctl_tcp_max_reordering; + int sysctl_tcp_dsack; + int sysctl_tcp_app_win; int sysctl_tcp_adv_win_scale; - u8 sysctl_tcp_dsack; - u8 sysctl_tcp_app_win; - u8 sysctl_tcp_frto; - u8 sysctl_tcp_nometrics_save; - u8 sysctl_tcp_no_ssthresh_metrics_save; - u8 sysctl_tcp_moderate_rcvbuf; - u8 sysctl_tcp_tso_win_divisor; - u8 sysctl_tcp_workaround_signed_windows; + int sysctl_tcp_frto; + int sysctl_tcp_nometrics_save; + int sysctl_tcp_no_ssthresh_metrics_save; + int sysctl_tcp_moderate_rcvbuf; + int sysctl_tcp_tso_win_divisor; + int sysctl_tcp_workaround_signed_windows; int sysctl_tcp_limit_output_bytes; int sysctl_tcp_challenge_ack_limit; + int sysctl_tcp_min_tso_segs; int sysctl_tcp_min_rtt_wlen; - u8 sysctl_tcp_min_tso_segs; - u8 sysctl_tcp_autocorking; - u8 sysctl_tcp_reflect_tos; + int sysctl_tcp_autocorking; int sysctl_tcp_invalid_ratelimit; int sysctl_tcp_pacing_ss_ratio; int sysctl_tcp_pacing_ca_ratio; @@ -185,6 +184,7 @@ struct netns_ipv4 { unsigned int sysctl_tcp_fastopen_blackhole_timeout; atomic_t tfo_active_disable_times; unsigned long tfo_active_disable_stamp; + int sysctl_tcp_reflect_tos; int sysctl_udp_wmem_min; int sysctl_udp_rmem_min; diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c index 8c2a45eb783c..d1aa5e294f10 100644 --- a/net/ipv4/sysctl_net_ipv4.c +++ b/net/ipv4/sysctl_net_ipv4.c @@ -727,17 +727,17 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_fwmark_accept", .data = &init_net.ipv4.sysctl_tcp_fwmark_accept, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, #ifdef CONFIG_NET_L3_MASTER_DEV { .procname = "tcp_l3mdev_accept", .data = &init_net.ipv4.sysctl_tcp_l3mdev_accept, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, }, @@ -745,9 +745,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_mtu_probing", .data = &init_net.ipv4.sysctl_tcp_mtu_probing, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, { .procname = "tcp_base_mss", @@ -849,9 +849,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_keepalive_probes", .data = &init_net.ipv4.sysctl_tcp_keepalive_probes, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_keepalive_intvl", @@ -863,26 +863,26 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_syn_retries", .data = &init_net.ipv4.sysctl_tcp_syn_retries, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = &tcp_syn_retries_min, .extra2 = &tcp_syn_retries_max }, { .procname = "tcp_synack_retries", .data = &init_net.ipv4.sysctl_tcp_synack_retries, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, #ifdef CONFIG_SYN_COOKIES { .procname = "tcp_syncookies", .data = &init_net.ipv4.sysctl_tcp_syncookies, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, #endif { @@ -895,24 +895,24 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_retries1", .data = &init_net.ipv4.sysctl_tcp_retries1, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra2 = &tcp_retr1_max }, { .procname = "tcp_retries2", .data = &init_net.ipv4.sysctl_tcp_retries2, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_orphan_retries", .data = &init_net.ipv4.sysctl_tcp_orphan_retries, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_fin_timeout", @@ -931,9 +931,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_tw_reuse", .data = &init_net.ipv4.sysctl_tcp_tw_reuse, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &two, }, @@ -1019,88 +1019,88 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_sack", .data = &init_net.ipv4.sysctl_tcp_sack, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_window_scaling", .data = &init_net.ipv4.sysctl_tcp_window_scaling, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_timestamps", .data = &init_net.ipv4.sysctl_tcp_timestamps, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_early_retrans", .data = &init_net.ipv4.sysctl_tcp_early_retrans, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &four, }, { .procname = "tcp_recovery", .data = &init_net.ipv4.sysctl_tcp_recovery, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, { .procname = "tcp_thin_linear_timeouts", .data = &init_net.ipv4.sysctl_tcp_thin_linear_timeouts, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_slow_start_after_idle", .data = &init_net.ipv4.sysctl_tcp_slow_start_after_idle, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_retrans_collapse", .data = &init_net.ipv4.sysctl_tcp_retrans_collapse, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_stdurg", .data = &init_net.ipv4.sysctl_tcp_stdurg, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_rfc1337", .data = &init_net.ipv4.sysctl_tcp_rfc1337, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_abort_on_overflow", .data = &init_net.ipv4.sysctl_tcp_abort_on_overflow, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_fack", .data = &init_net.ipv4.sysctl_tcp_fack, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_max_reordering", @@ -1112,16 +1112,16 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_dsack", .data = &init_net.ipv4.sysctl_tcp_dsack, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_app_win", .data = &init_net.ipv4.sysctl_tcp_app_win, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_adv_win_scale", @@ -1135,46 +1135,46 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_frto", .data = &init_net.ipv4.sysctl_tcp_frto, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_no_metrics_save", .data = &init_net.ipv4.sysctl_tcp_nometrics_save, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, { .procname = "tcp_no_ssthresh_metrics_save", .data = &init_net.ipv4.sysctl_tcp_no_ssthresh_metrics_save, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, }, { .procname = "tcp_moderate_rcvbuf", .data = &init_net.ipv4.sysctl_tcp_moderate_rcvbuf, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, { .procname = "tcp_tso_win_divisor", .data = &init_net.ipv4.sysctl_tcp_tso_win_divisor, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec, }, { .procname = "tcp_workaround_signed_windows", .data = &init_net.ipv4.sysctl_tcp_workaround_signed_windows, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec }, { .procname = "tcp_limit_output_bytes", @@ -1193,9 +1193,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_min_tso_segs", .data = &init_net.ipv4.sysctl_tcp_min_tso_segs, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ONE, .extra2 = &gso_max_segs, }, @@ -1211,9 +1211,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_autocorking", .data = &init_net.ipv4.sysctl_tcp_autocorking, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, }, @@ -1284,9 +1284,9 @@ static struct ctl_table ipv4_net_table[] = { { .procname = "tcp_reflect_tos", .data = &init_net.ipv4.sysctl_tcp_reflect_tos, - .maxlen = sizeof(u8), + .maxlen = sizeof(int), .mode = 0644, - .proc_handler = proc_dou8vec_minmax, + .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, },