xref: /linux/Documentation/networking/net_cachelines/inet_sock.rst (revision d30c1683aaecb93d2ab95685dc4300a33d3cea7a)
1.. SPDX-License-Identifier: GPL-2.0
2.. Copyright (C) 2023 Google LLC
3
4==========================================
5inet_sock struct fast path usage breakdown
6==========================================
7
8======================== ===================== =================== =================== ======================================================================================================
9Type                     Name                  fastpath_tx_access  fastpath_rx_access  comment
10======================== ===================== =================== =================== ======================================================================================================
11struct sock              sk                    read_mostly         read_mostly         tcp_init_buffer_space,tcp_init_transfer,tcp_finish_connect,tcp_connect,tcp_send_rcvq,tcp_send_syn_data
12struct ipv6_pinfo*       pinet6
13struct ipv6_fl_socklist* ipv6_fl_list          read_mostly                             tcp_v6_connect,__ip6_datagram_connect,udpv6_sendmsg,rawv6_sendmsg
14be16                     inet_sport            read_mostly                             __tcp_transmit_skb
15be32                     inet_daddr            read_mostly                             ip_select_ident_segs
16be32                     inet_rcv_saddr
17be16                     inet_dport            read_mostly                             __tcp_transmit_skb
18u16                      inet_num
19be32                     inet_saddr
20s16                      uc_ttl                read_mostly                             __ip_queue_xmit/ip_select_ttl
21u16                      cmsg_flags
22struct ip_options_rcu*   inet_opt              read_mostly                             __ip_queue_xmit
23u16                      inet_id               read_mostly                             ip_select_ident_segs
24u8                       tos                   read_mostly                             ip_queue_xmit
25u8                       min_ttl
26u8                       mc_ttl
27u8                       pmtudisc
28u8:1                     recverr
29u8:1                     is_icsk
30u8:1                     freebind
31u8:1                     hdrincl
32u8:1                     mc_loop
33u8:1                     transparent
34u8:1                     mc_all
35u8:1                     nodefrag
36u8:1                     bind_address_no_port
37u8:1                     recverr_rfc4884
38u8:1                     defer_connect         read_mostly                             tcp_sendmsg_fastopen
39u8                       rcv_tos
40u8                       convert_csum
41int                      uc_index
42int                      mc_index
43be32                     mc_addr
44struct ip_mc_socklist*   mc_list
45struct inet_cork_full    cork                  read_mostly                             __tcp_transmit_skb
46struct                   local_port_range
47======================== ===================== =================== =================== ======================================================================================================
48