| /linux/net/ipv4/ |
| H A D | ip_output.c | 953 struct inet_cork *cork, in __ip_append_data() argument 963 struct ip_options *opt = cork->opt; in __ip_append_data() 973 struct rtable *rt = dst_rtable(cork->dst); in __ip_append_data() 981 mtu = cork->gso_size ? IP_MAX_MTU : cork->fragsize; in __ip_append_data() 982 paged = !!cork->gso_size; in __ip_append_data() 990 if (cork->length + length > maxnonfragsize - fragheaderlen) { in __ip_append_data() 1003 (!(flags & MSG_MORE) || cork->gso_size) && in __ip_append_data() 1049 cork->length += length; in __ip_append_data() 1051 if (cork->tx_flags & SKBTX_ANY_TSTAMP && in __ip_append_data() 1053 if (cork->flags & IPCORK_TS_OPT_ID) { in __ip_append_data() [all …]
|
| H A D | tcp_bpf.c | 407 bool cork = false, enospc = sk_msg_full(msg), redir_ingress; in tcp_bpf_send_verdict() local 428 if (!psock->cork) { in tcp_bpf_send_verdict() 429 psock->cork = kzalloc_obj(*psock->cork, in tcp_bpf_send_verdict() 431 if (!psock->cork) { in tcp_bpf_send_verdict() 437 memcpy(psock->cork, msg, sizeof(*msg)); in tcp_bpf_send_verdict() 465 if (psock->cork) { in tcp_bpf_send_verdict() 466 cork = true; in tcp_bpf_send_verdict() 467 psock->cork = NULL; in tcp_bpf_send_verdict() 484 if (!cork) in tcp_bpf_send_verdict() 487 if (cork) { in tcp_bpf_send_verdict() [all …]
|
| H A D | udp.c | 1118 struct inet_cork *cork) in udp_send_skb() argument 1139 if (cork->gso_size) { in udp_send_skb() 1143 if (hlen + min(datalen, cork->gso_size) > cork->fragsize) { in udp_send_skb() 1147 if (datalen > cork->gso_size * UDP_MAX_SEGMENTS) { in udp_send_skb() 1160 if (datalen > cork->gso_size) { in udp_send_skb() 1161 skb_shinfo(skb)->gso_size = cork->gso_size; in udp_send_skb() 1164 cork->gso_size); in udp_send_skb() 1216 struct flowi4 *fl4 = &inet->cork.fl.u.ip4; in udp_push_pending_frames() 1224 err = udp_send_skb(skb, fl4, &inet->cork.base); in udp_push_pending_frames() 1305 fl4 = &inet->cork.fl.u.ip4; in udp_sendmsg() [all …]
|
| H A D | datagram.c | 48 fl4 = &inet->cork.fl.u.ip4; in __ip4_datagram_connect()
|
| H A D | inet_connection_sock.c | 807 fl4 = &newinet->cork.fl.u.ip4; in inet_csk_route_child_sock() 1553 dst = inet_csk_rebuild_route(sk, &inet->cork.fl); in inet_csk_update_pmtu() 1561 dst = inet_csk_rebuild_route(sk, &inet->cork.fl); in inet_csk_update_pmtu()
|
| H A D | syncookies.c | 504 inet_sk(ret)->cork.fl.u.ip4 = fl4; in cookie_v4_check()
|
| H A D | af_inet.c | 1284 fl4 = &inet->cork.fl.u.ip4; in inet_sk_reselect_saddr() 1334 fl4 = &inet->cork.fl.u.ip4; in inet_sk_rebuild_header()
|
| /linux/net/ipv6/ |
| H A D | ip6_output.c | 1341 static int ip6_setup_cork(struct sock *sk, struct inet_cork_full *cork, in ip6_setup_cork() argument 1346 struct inet6_cork *v6_cork = &cork->base6; in ip6_setup_cork() 1353 cork->base.dst = &rt->dst; in ip6_setup_cork() 1402 cork->base.fragsize = mtu; in ip6_setup_cork() 1403 cork->base.gso_size = ipc6->gso_size; in ip6_setup_cork() 1404 cork->base.tx_flags = 0; in ip6_setup_cork() 1405 cork->base.mark = ipc6->sockc.mark; in ip6_setup_cork() 1406 cork->base.priority = ipc6->sockc.priority; in ip6_setup_cork() 1407 sock_tx_timestamp(sk, &ipc6->sockc, &cork->base.tx_flags); in ip6_setup_cork() 1409 cork->base.flags |= IPCORK_TS_OPT_ID; in ip6_setup_cork() [all …]
|
| H A D | udp.c | 1371 struct inet_cork *cork) in udp_v6_send_skb() argument 1391 if (cork->gso_size) { in udp_v6_send_skb() 1395 if (hlen + min(datalen, cork->gso_size) > cork->fragsize) { in udp_v6_send_skb() 1399 if (datalen > cork->gso_size * UDP_MAX_SEGMENTS) { in udp_v6_send_skb() 1412 if (datalen > cork->gso_size) { in udp_v6_send_skb() 1413 skb_shinfo(skb)->gso_size = cork->gso_size; in udp_v6_send_skb() 1416 cork->gso_size); in udp_v6_send_skb() 1469 err = udp_v6_send_skb(skb, &inet_sk(sk)->cork.fl.u.ip6, in udp_v6_push_pending_frames() 1470 &inet_sk(sk)->cork.base); in udp_v6_push_pending_frames() 1488 struct inet_cork_full cork; in udpv6_sendmsg() local [all …]
|
| H A D | inet6_connection_sock.c | 94 struct flowi6 *fl6 = &inet_sk(sk)->cork.fl.u.ip6; in inet6_csk_xmit() 124 struct flowi6 *fl6 = &inet_sk(sk)->cork.fl.u.ip6; in inet6_csk_update_pmtu()
|
| H A D | raw.c | 531 total_len = inet_sk(sk)->cork.base.length; in rawv6_push_pending_frames() 532 opt = inet_sk(sk)->cork.base6.opt; in rawv6_push_pending_frames()
|
| H A D | tcp_ipv6.c | 156 fl6 = &inet_sk(sk)->cork.fl.u.ip6; in tcp_v6_connect() 1397 newinet->cork.fl.u.ip6 = fl6;
|
| H A D | af_inet6.c | 828 fl6 = &inet->cork.fl.u.ip6; in inet6_sk_rebuild_header()
|
| /linux/include/linux/ |
| H A D | skmsg.h | 90 struct sk_msg *cork; member 474 if (psock->cork) { in sk_psock_cork_free() 475 sk_msg_free(psock->sk, psock->cork); in sk_psock_cork_free() 476 kfree(psock->cork); in sk_psock_cork_free() 477 psock->cork = NULL; in sk_psock_cork_free()
|
| /linux/Documentation/networking/net_cachelines/ |
| H A D | inet_sock.rst | 45 struct inet_cork_full cork read_mostly __tcp_transm…
|
| /linux/include/net/ |
| H A D | ip.h | 232 struct inet_cork *cork); 241 struct inet_cork *cork, unsigned int flags); 247 return __ip_make_skb(sk, fl4, &sk->sk_write_queue, &inet_sk(sk)->cork.base); in ip_finish_skb()
|
| H A D | ipv6.h | 1031 struct inet_cork_full *cork); 1038 struct inet_cork_full *cork); 1042 return __ip6_make_skb(sk, &sk->sk_write_queue, &inet_sk(sk)->cork); in ip6_finish_skb()
|
| H A D | inet_sock.h | 250 struct inet_cork_full cork; member
|
| /linux/net/l2tp/ |
| H A D | l2tp_ip.c | 490 struct flowi4 *fl4 = &inet->cork.fl.u.ip4; in l2tp_ip_sendmsg() 520 rc = ip_queue_xmit(sk, skb, &inet->cork.fl); in l2tp_ip_sendmsg()
|
| /linux/net/sctp/ |
| H A D | outqueue.c | 312 if (!q->cork) in sctp_outq_tail() 761 if (q->cork) in sctp_outq_uncork() 762 q->cork = 0; in sctp_outq_uncork()
|
| H A D | sm_sideeffect.c | 1482 if (!asoc->outqueue.cork) { in sctp_cmd_interpreter() 1781 if (!asoc->outqueue.cork) { in sctp_cmd_interpreter()
|
| /linux/Documentation/translations/zh_CN/networking/ |
| H A D | timestamping.rst | 310 在主机上,TCP 也可以通过 Nagle、cork、autocork、分段和 GSO 打破简单的 1:1
|
| /linux/net/mptcp/ |
| H A D | sockopt.c | 656 msk->cork = !!val; in __mptcp_setsockopt_sol_tcp_cork() 1416 return mptcp_put_int_option(msk, optval, optlen, msk->cork); in mptcp_getsockopt_sol_tcp() 1578 __tcp_sock_set_cork(ssk, !!msk->cork); in sync_socket_options()
|
| /linux/include/net/sctp/ |
| H A D | structs.h | 1104 char cork; member 1123 q->cork = 1; in sctp_outq_cork()
|
| /linux/drivers/block/drbd/ |
| H A D | drbd_worker.c | 2071 int uncork, cork; in wait_for_work() local 2140 cork = nc ? nc->tcp_cork : 0; in wait_for_work() 2144 if (cork) in wait_for_work()
|