| /linux-6.15/net/dccp/ |
| H A D | ipv4.c | 57 struct ip_options_rcu *inet_opt; in dccp_v4_connect() local 69 inet_opt = rcu_dereference_protected(inet->inet_opt, in dccp_v4_connect() 71 if (inet_opt != NULL && inet_opt->opt.srr) { in dccp_v4_connect() 74 nexthop = inet_opt->opt.faddr; in dccp_v4_connect() 91 if (inet_opt == NULL || !inet_opt->opt.srr) in dccp_v4_connect() 108 if (inet_opt) in dccp_v4_connect() 109 inet_csk(sk)->icsk_ext_hdr_len = inet_opt->opt.optlen; in dccp_v4_connect() 429 RCU_INIT_POINTER(newinet->inet_opt, rcu_dereference(ireq->ireq_opt)); in dccp_v4_request_recv_sock() 447 newinet->inet_opt = NULL; in dccp_v4_request_recv_sock() 458 newinet->inet_opt = NULL; in dccp_v4_request_recv_sock()
|
| H A D | ipv6.c | 516 newinet->inet_opt = NULL; in dccp_v6_request_recv_sock()
|
| /linux-6.15/net/sctp/ |
| H A D | protocol.c | 181 struct ip_options_rcu *inet_opt, *newopt = NULL; in sctp_v4_copy_ip_options() local 186 inet_opt = rcu_dereference(inet->inet_opt); in sctp_v4_copy_ip_options() 187 if (inet_opt) { in sctp_v4_copy_ip_options() 188 newopt = sock_kmemdup(newsk, inet_opt, sizeof(*inet_opt) + in sctp_v4_copy_ip_options() 189 inet_opt->opt.optlen, GFP_ATOMIC); in sctp_v4_copy_ip_options() 193 RCU_INIT_POINTER(newinet->inet_opt, newopt); in sctp_v4_copy_ip_options() 201 struct ip_options_rcu *inet_opt; in sctp_v4_ip_options_len() local 205 inet_opt = rcu_dereference(inet->inet_opt); in sctp_v4_ip_options_len() 206 if (inet_opt) in sctp_v4_ip_options_len() 207 len = inet_opt->opt.optlen; in sctp_v4_ip_options_len()
|
| /linux-6.15/net/ipv4/ |
| H A D | ip_output.c | 461 struct ip_options_rcu *inet_opt; in __ip_queue_xmit() local 471 inet_opt = rcu_dereference(inet->inet_opt); in __ip_queue_xmit() 497 if (inet_opt && inet_opt->opt.is_strictroute && rt->rt_uses_gateway) in __ip_queue_xmit() 501 skb_push(skb, sizeof(struct iphdr) + (inet_opt ? inet_opt->opt.optlen : 0)); in __ip_queue_xmit() 515 if (inet_opt && inet_opt->opt.optlen) { in __ip_queue_xmit() 516 iph->ihl += inet_opt->opt.optlen >> 2; in __ip_queue_xmit() 517 ip_options_build(skb, &inet_opt->opt, inet->inet_daddr, rt); in __ip_queue_xmit()
|
| H A D | raw.c | 559 struct ip_options_rcu *inet_opt; in raw_sendmsg() local 562 inet_opt = rcu_dereference(inet->inet_opt); in raw_sendmsg() 563 if (inet_opt) { in raw_sendmsg() 564 memcpy(&opt_copy, inet_opt, in raw_sendmsg() 565 sizeof(*inet_opt) + inet_opt->opt.optlen); in raw_sendmsg()
|
| H A D | ping.c | 749 struct ip_options_rcu *inet_opt; in ping_v4_sendmsg() local 752 inet_opt = rcu_dereference(inet->inet_opt); in ping_v4_sendmsg() 753 if (inet_opt) { in ping_v4_sendmsg() 754 memcpy(&opt_copy, inet_opt, in ping_v4_sendmsg() 755 sizeof(*inet_opt) + inet_opt->opt.optlen); in ping_v4_sendmsg()
|
| H A D | tcp_ipv4.c | 226 struct ip_options_rcu *inet_opt; in tcp_v4_connect() local 241 inet_opt = rcu_dereference_protected(inet->inet_opt, in tcp_v4_connect() 243 if (inet_opt && inet_opt->opt.srr) { in tcp_v4_connect() 246 nexthop = inet_opt->opt.faddr; in tcp_v4_connect() 267 if (!inet_opt || !inet_opt->opt.srr) in tcp_v4_connect() 294 if (inet_opt) in tcp_v4_connect() 1769 struct ip_options_rcu *inet_opt; local 1785 RCU_INIT_POINTER(newinet->inet_opt, inet_opt); 1790 if (inet_opt) 1840 newinet->inet_opt = NULL; [all …]
|
| H A D | ip_sockglue.c | 1090 old = rcu_dereference_protected(inet->inet_opt, in do_ip_setsockopt() 1109 rcu_assign_pointer(inet->inet_opt, opt); in do_ip_setsockopt() 1606 struct ip_options_rcu *inet_opt; in do_ip_getsockopt() local 1609 inet_opt = rcu_dereference(inet->inet_opt); in do_ip_getsockopt() 1611 if (inet_opt) in do_ip_getsockopt() 1612 memcpy(optbuf, &inet_opt->opt, in do_ip_getsockopt() 1614 inet_opt->opt.optlen); in do_ip_getsockopt()
|
| H A D | af_inet.c | 158 kfree(rcu_dereference_protected(inet->inet_opt, 1)); in inet_sock_destruct() 1261 struct ip_options_rcu *inet_opt; in inet_sk_reselect_saddr() local 1264 inet_opt = rcu_dereference_protected(inet->inet_opt, in inet_sk_reselect_saddr() 1266 if (inet_opt && inet_opt->opt.srr) in inet_sk_reselect_saddr() 1267 daddr = inet_opt->opt.faddr; in inet_sk_reselect_saddr()
|
| H A D | cipso_ipv4.c | 1904 old = rcu_dereference_protected(sk_inet->inet_opt, sk_locked); in cipso_v4_sock_setattr() 1912 rcu_assign_pointer(sk_inet->inet_opt, opt); in cipso_v4_sock_setattr() 2062 hdr_delta = cipso_v4_delopt(&sk_inet->inet_opt); in cipso_v4_sock_delattr() 2151 opt = rcu_dereference(inet_sk(sk)->inet_opt); in cipso_v4_sock_getattr()
|
| H A D | udp.c | 1366 struct ip_options_rcu *inet_opt; in udp_sendmsg() local 1369 inet_opt = rcu_dereference(inet->inet_opt); in udp_sendmsg() 1370 if (inet_opt) { in udp_sendmsg() 1371 memcpy(&opt_copy, inet_opt, in udp_sendmsg() 1372 sizeof(*inet_opt) + inet_opt->opt.optlen); in udp_sendmsg()
|
| H A D | route.c | 542 const struct ip_options_rcu *inet_opt; in build_sk_flow_key() local 546 inet_opt = rcu_dereference(inet->inet_opt); in build_sk_flow_key() 547 if (inet_opt && inet_opt->opt.srr) in build_sk_flow_key() 548 daddr = inet_opt->opt.faddr; in build_sk_flow_key()
|
| /linux-6.15/Documentation/networking/net_cachelines/ |
| H A D | inet_sock.rst | 21 struct ip_options_rcu* inet_opt read_mostly __ip_queue_xm…
|
| /linux-6.15/include/net/ |
| H A D | inet_sock.h | 228 struct ip_options_rcu __rcu *inet_opt; member
|
| H A D | route.h | 142 ip4_opt = rcu_dereference(inet->inet_opt); in inet_sk_init_flowi4()
|
| /linux-6.15/net/mptcp/ |
| H A D | protocol.c | 3172 struct ip_options_rcu *inet_opt, *newopt = NULL; in mptcp_copy_ip_options() local 3179 inet_opt = rcu_dereference(inet->inet_opt); in mptcp_copy_ip_options() 3180 if (inet_opt) { in mptcp_copy_ip_options() 3181 newopt = sock_kmemdup(newsk, inet_opt, sizeof(*inet_opt) + in mptcp_copy_ip_options() 3182 inet_opt->opt.optlen, GFP_ATOMIC); in mptcp_copy_ip_options() 3186 RCU_INIT_POINTER(newinet->inet_opt, newopt); in mptcp_copy_ip_options()
|
| /linux-6.15/net/ipv6/ |
| H A D | tcp_ipv6.c | 1469 newinet->inet_opt = NULL;
|
| /linux-6.15/drivers/net/ethernet/chelsio/inline_crypto/chtls/ |
| H A D | chtls_cm.c | 1208 newinet->inet_opt = NULL; in chtls_recv_sock()
|
| /linux-6.15/net/ |
| H A D | socket.c | 3684 opt = rcu_dereference_protected(inet->inet_opt, in kernel_sock_ip_overhead()
|