1 .. SPDX-License-Identifier: GPL-2.0
2 .. Copyright (C) 2023 Google LLC
4 ===========================================
5 netns_ipv4 struct fast path usage breakdown
6 ===========================================
8 Type Name fastpath_tx_access fastpath_rx_access comment
10 struct_inet_timewait_death_row tcp_death_row
11 struct_udp_table* udp_table
12 struct_ctl_table_header* forw_hdr
13 struct_ctl_table_header* frags_hdr
14 struct_ctl_table_header* ipv4_hdr
15 struct_ctl_table_header* route_hdr
16 struct_ctl_table_header* xfrm4_hdr
17 struct_ipv4_devconf* devconf_all
18 struct_ipv4_devconf* devconf_dflt
19 struct_ip_ra_chain ra_chain
21 struct_fib_rules_ops* rules_ops
22 struct_fib_table fib_main
23 struct_fib_table fib_default
24 unsigned_int fib_rules_require_fldissect
25 bool fib_has_custom_rules
26 bool fib_has_custom_local_routes
27 bool fib_offload_disabled
28 atomic_t fib_num_tclassid_users
29 struct_hlist_head* fib_table_hash
31 struct_sock* mc_autojoin_sk
32 struct_inet_peer_base* peers
34 u8 sysctl_icmp_echo_ignore_all
35 u8 sysctl_icmp_echo_enable_probe
36 u8 sysctl_icmp_echo_ignore_broadcasts
37 u8 sysctl_icmp_ignore_bogus_error_responses
38 u8 sysctl_icmp_errors_use_inbound_ifaddr
39 int sysctl_icmp_ratelimit
40 int sysctl_icmp_ratemask
41 u32 ip_rt_min_pmtu - -
42 int ip_rt_mtu_expires - -
43 int ip_rt_min_advmss - -
44 struct_local_ports ip_local_ports - -
46 u8 sysctl_tcp_ecn_fallback - -
47 u8 sysctl_ip_default_ttl - - ip4_dst_hoplimit/ip_select_ttl
48 u8 sysctl_ip_no_pmtu_disc - -
49 u8 sysctl_ip_fwd_use_pmtu read_mostly - ip_dst_mtu_maybe_forward/ip_skb_dst_mtu
50 u8 sysctl_ip_fwd_update_priority - - ip_forward
51 u8 sysctl_ip_nonlocal_bind - -
52 u8 sysctl_ip_autobind_reuse - -
53 u8 sysctl_ip_dynaddr - -
54 u8 sysctl_ip_early_demux - read_mostly ip(6)_rcv_finish_core
55 u8 sysctl_raw_l3mdev_accept - -
56 u8 sysctl_tcp_early_demux - read_mostly ip(6)_rcv_finish_core
57 u8 sysctl_udp_early_demux
58 u8 sysctl_nexthop_compat_mode - -
59 u8 sysctl_fwmark_reflect - -
60 u8 sysctl_tcp_fwmark_accept - -
61 u8 sysctl_tcp_l3mdev_accept - -
62 u8 sysctl_tcp_mtu_probing - -
63 int sysctl_tcp_mtu_probe_floor - -
64 int sysctl_tcp_base_mss - -
65 int sysctl_tcp_min_snd_mss read_mostly - __tcp_mtu_to_mss(tcp_write_xmit)
66 int sysctl_tcp_probe_threshold - - tcp_mtu_probe(tcp_write_xmit)
67 u32 sysctl_tcp_probe_interval - - tcp_mtu_check_reprobe(tcp_write_xmit)
68 int sysctl_tcp_keepalive_time - -
69 int sysctl_tcp_keepalive_intvl - -
70 u8 sysctl_tcp_keepalive_probes - -
71 u8 sysctl_tcp_syn_retries - -
72 u8 sysctl_tcp_synack_retries - -
73 u8 sysctl_tcp_syncookies - - generated_on_syn
74 u8 sysctl_tcp_migrate_req - - reuseport
75 u8 sysctl_tcp_comp_sack_nr - - __tcp_ack_snd_check
76 int sysctl_tcp_reordering - read_mostly tcp_may_raise_cwnd/tcp_cong_control
77 u8 sysctl_tcp_retries1 - -
78 u8 sysctl_tcp_retries2 - -
79 u8 sysctl_tcp_orphan_retries - -
80 u8 sysctl_tcp_tw_reuse - - timewait_sock_ops
81 int sysctl_tcp_fin_timeout - - TCP_LAST_ACK/tcp_rcv_state_process
82 unsigned_int sysctl_tcp_notsent_lowat read_mostly - tcp_notsent_lowat/tcp_stream_memory_free
83 u8 sysctl_tcp_sack - - tcp_syn_options
84 u8 sysctl_tcp_window_scaling - - tcp_syn_options,tcp_parse_options
85 u8 sysctl_tcp_timestamps
86 u8 sysctl_tcp_early_retrans read_mostly - tcp_schedule_loss_probe(tcp_write_xmit)
87 u8 sysctl_tcp_recovery - - tcp_fastretrans_alert
88 u8 sysctl_tcp_thin_linear_timeouts - - tcp_retrans_timer(on_thin_streams)
89 u8 sysctl_tcp_slow_start_after_idle - - unlikely(tcp_cwnd_validate-network-not-starved)
90 u8 sysctl_tcp_retrans_collapse - -
91 u8 sysctl_tcp_stdurg - - unlikely(tcp_check_urg)
92 u8 sysctl_tcp_rfc1337 - -
93 u8 sysctl_tcp_abort_on_overflow - -
94 u8 sysctl_tcp_fack - -
95 int sysctl_tcp_max_reordering - - tcp_check_sack_reordering
96 int sysctl_tcp_adv_win_scale - - tcp_init_buffer_space
97 u8 sysctl_tcp_dsack - - partial_packet_or_retrans_in_tcp_data_queue
98 u8 sysctl_tcp_app_win - - tcp_win_from_space
99 u8 sysctl_tcp_frto - - tcp_enter_loss
100 u8 sysctl_tcp_nometrics_save - - TCP_LAST_ACK/tcp_update_metrics
101 u8 sysctl_tcp_no_ssthresh_metrics_save - - TCP_LAST_ACK/tcp_(update/init)_metrics
102 u8 sysctl_tcp_moderate_rcvbuf read_mostly read_mostly tcp_tso_should_defer(tx);tcp_rcv_space_adjust(rx)
103 u8 sysctl_tcp_tso_win_divisor read_mostly - tcp_tso_should_defer(tcp_write_xmit)
104 u8 sysctl_tcp_workaround_signed_windows - - tcp_select_window
105 int sysctl_tcp_limit_output_bytes read_mostly - tcp_small_queue_check(tcp_write_xmit)
106 int sysctl_tcp_challenge_ack_limit - -
107 int sysctl_tcp_min_rtt_wlen read_mostly - tcp_ack_update_rtt
108 u8 sysctl_tcp_min_tso_segs - - unlikely(icsk_ca_ops-written)
109 u8 sysctl_tcp_tso_rtt_log read_mostly - tcp_tso_autosize
110 u8 sysctl_tcp_autocorking read_mostly - tcp_push/tcp_should_autocork
111 u8 sysctl_tcp_reflect_tos - - tcp_v(4/6)_send_synack
112 int sysctl_tcp_invalid_ratelimit - -
113 int sysctl_tcp_pacing_ss_ratio - - default_cong_cont(tcp_update_pacing_rate)
114 int sysctl_tcp_pacing_ca_ratio - - default_cong_cont(tcp_update_pacing_rate)
115 int sysctl_tcp_wmem[3] read_mostly - tcp_wmem_schedule(sendmsg/sendpage)
116 int sysctl_tcp_rmem[3] - read_mostly __tcp_grow_window(tx),tcp_rcv_space_adjust(rx)
117 unsigned_int sysctl_tcp_child_ehash_entries
118 unsigned_long sysctl_tcp_comp_sack_delay_ns - - __tcp_ack_snd_check
119 unsigned_long sysctl_tcp_comp_sack_slack_ns - - __tcp_ack_snd_check
120 int sysctl_max_syn_backlog - -
121 int sysctl_tcp_fastopen - -
122 struct_tcp_congestion_ops tcp_congestion_control - - init_cc
123 struct_tcp_fastopen_context tcp_fastopen_ctx - -
124 unsigned_int sysctl_tcp_fastopen_blackhole_timeout - -
125 atomic_t tfo_active_disable_times - -
126 unsigned_long tfo_active_disable_stamp - -
127 u32 tcp_challenge_timestamp - -
128 u32 tcp_challenge_count - -
129 u8 sysctl_tcp_plb_enabled - -
130 u8 sysctl_tcp_plb_idle_rehash_rounds - -
131 u8 sysctl_tcp_plb_rehash_rounds - -
132 u8 sysctl_tcp_plb_suspend_rto_sec - -
133 int sysctl_tcp_plb_cong_thresh - -
134 int sysctl_udp_wmem_min
135 int sysctl_udp_rmem_min
136 u8 sysctl_fib_notify_on_flag_change
137 u8 sysctl_udp_l3mdev_accept
138 u8 sysctl_igmp_llm_reports
139 int sysctl_igmp_max_memberships
140 int sysctl_igmp_max_msf
142 struct_ping_group_range ping_group_range
143 atomic_t dev_addr_genid
144 unsigned_int sysctl_udp_child_hash_entries
145 unsigned_long* sysctl_local_reserved_ports
146 int sysctl_ip_prot_sock
148 struct_list_head mr_tables
149 struct_fib_rules_ops* mr_rules_ops
150 u32 sysctl_fib_multipath_hash_fields
151 u8 sysctl_fib_multipath_use_neigh
152 u8 sysctl_fib_multipath_hash_policy
153 struct_fib_notifier_ops* notifier_ops
155 struct_fib_notifier_ops* ipmr_notifier_ops
156 unsigned_int ipmr_seq
158 siphash_key_t ip_id_key