/linux-6.12.1/include/net/ |
D | gso.h | 21 __u16 csum_start; member 54 SKB_GSO_CB(skb)->csum_start = skb_checksum_start(skb) - skb->head; in gso_reset_checksum() 67 unsigned char *csum_start = skb_transport_header(skb); in gso_make_checksum() local 68 int plen = (skb->head + SKB_GSO_CB(skb)->csum_start) - csum_start; in gso_make_checksum() 72 SKB_GSO_CB(skb)->csum_start = csum_start - skb->head; in gso_make_checksum() 74 return csum_fold(csum_partial(csum_start, plen, partial)); in gso_make_checksum()
|
D | xdp_sock.h | 117 void (*tmo_request_checksum)(u16 csum_start, u16 csum_offset, void *priv); 171 ops->tmo_request_checksum(meta->request.csum_start, in xsk_tx_metadata_request()
|
D | ip6_checksum.h | 61 skb->csum_start = skb_transport_header(skb) - skb->head; in __tcp_v6_send_check()
|
D | gre.h | 140 skb->csum_start = skb_transport_header(skb) - skb->head; in gre_build_header()
|
/linux-6.12.1/Documentation/networking/ |
D | checksum-offloads.rst | 33 checksum defined by the sk_buff fields skb->csum_start and skb->csum_offset. 35 'IP-style' checksum) from csum_start to the end of the packet, and fill in the 36 result at (csum_start + csum_offset). 49 skb->csum_start and skb->csum_offset as described above, and setting 63 which only advertises NETIF_F_IP[V6]_CSUM must still obey the csum_start and 97 from csum_start to the end of the packet will be equal to the complement of 100 summing when we get to csum_start, then add the complement of the 16-bit word 101 at (csum_start + csum_offset).
|
D | xsk-tx-metadata.rst | 50 checksum. ``csum_start`` specifies byte offset of where the checksumming
|
/linux-6.12.1/include/linux/ |
D | virtio_net.h | 97 u32 start = __virtio16_to_cpu(little_endian, hdr->csum_start); in virtio_net_hdr_to_skb() 233 hdr->csum_start = __cpu_to_virtio16(little_endian, in virtio_net_hdr_from_skb()
|
/linux-6.12.1/include/uapi/linux/ |
D | virtio_net.h | 146 __virtio16 csum_start; member 196 __virtio16 csum_start; /* Position to start checksumming from */ member
|
D | if_xdp.h | 142 __u16 csum_start; member
|
/linux-6.12.1/tools/testing/selftests/net/lib/ |
D | csum.c | 423 vh.csum_start = sizeof(struct ethhdr) + sizeof(struct ipv6hdr); in send_packet() 426 vh.csum_start = sizeof(struct ethhdr) + sizeof(struct iphdr); in send_packet() 431 vh.csum_start += ENC_HEADER_LEN; in send_packet() 435 vh.hdr_len = vh.csum_start + sizeof(struct tcphdr); in send_packet() 438 vh.hdr_len = vh.csum_start + sizeof(struct udphdr); in send_packet()
|
/linux-6.12.1/drivers/net/ethernet/sfc/ |
D | ef100_tx.c | 138 int csum_start; in ef100_set_tx_csum_partial() local 146 csum_start = skb_checksum_start_offset(skb); in ef100_set_tx_csum_partial() 150 csum_start >> 1, in ef100_set_tx_csum_partial()
|
/linux-6.12.1/tools/testing/selftests/bpf/progs/ |
D | decap_sanity.c | 28 return skb->csum_start - skb_headroom(skb); in skb_checksum_start_offset()
|
/linux-6.12.1/tools/include/uapi/linux/ |
D | if_xdp.h | 142 __u16 csum_start; member
|
/linux-6.12.1/tools/testing/selftests/net/ |
D | psock_snd.c | 84 vh->csum_start = ETH_HLEN + sizeof(struct iphdr); in build_vnet_header() 89 vh->csum_start += sizeof(struct udphdr) + cfg_payload_len - in build_vnet_header()
|
D | txtimestamp.c | 423 const void *csum_start = udph; in get_udp_csum() local 429 csum_start -= alen * 2; in get_udp_csum() 432 return get_ip_csum(csum_start, csum_len >> 1, pseudo_sum); in get_udp_csum()
|
/linux-6.12.1/net/sctp/ |
D | offload.c | 35 SKB_GSO_CB(skb)->csum_start = skb_headroom(skb) + skb->len; in sctp_gso_make_checksum()
|
/linux-6.12.1/fs/btrfs/ |
D | file-item.c | 290 u64 csum_start; in search_csum_tree() local 303 csum_start = key.offset; in search_csum_tree() 306 if (in_range(disk_bytenr, csum_start, csum_len)) in search_csum_tree() 321 csum_start = key.offset; in search_csum_tree() 323 ASSERT(in_range(disk_bytenr, csum_start, csum_len)); in search_csum_tree() 326 ret = (min(csum_start + csum_len, disk_bytenr + len) - in search_csum_tree()
|
/linux-6.12.1/net/ipv4/ |
D | fou_core.c | 1008 u16 csum_start = skb_checksum_start_offset(skb); in __gue_build_header() local 1011 if (csum_start < hdrlen) in __gue_build_header() 1014 csum_start -= hdrlen; in __gue_build_header() 1015 pd[0] = htons(csum_start); in __gue_build_header() 1016 pd[1] = htons(csum_start + skb->csum_offset); in __gue_build_header()
|
D | udp_offload.c | 145 skb->csum_start = skb_transport_header(skb) - skb->head; in __skb_udp_tunnel_segment() 305 gso_skb->csum_start = skb_transport_header(gso_skb) - gso_skb->head; in __udp_gso_segment() 681 skb->csum_start = (unsigned char *)uh - skb->head; in udp_gro_complete_segment()
|
D | gre_offload.c | 114 skb->csum_start = skb_transport_header(skb) - skb->head; in gre_gso_segment()
|
/linux-6.12.1/tools/testing/selftests/bpf/ |
D | xdp_hw_metadata.c | 389 meta->request.csum_start = sizeof(*eth) + sizeof(*iph); in ping_pong() 391 meta->request.csum_start = sizeof(*eth) + sizeof(*ip6h); in ping_pong() 396 meta->request.csum_start, meta->request.csum_offset); in ping_pong()
|
/linux-6.12.1/net/ipv6/ |
D | ip6_checksum.c | 132 skb->csum_start = skb_transport_header(skb) - skb->head; in udp6_set_csum()
|
/linux-6.12.1/drivers/net/wireless/ath/ath6kl/ |
D | txrx.c | 369 u8 csum_start = 0, csum_dest = 0, csum = skb->ip_summed; in ath6kl_data_tx() local 396 csum_start = skb->csum_start - in ath6kl_data_tx() 399 csum_dest = skb->csum_offset + csum_start; in ath6kl_data_tx() 415 meta_v2.csum_start = csum_start; in ath6kl_data_tx()
|
/linux-6.12.1/net/netfilter/ipvs/ |
D | ip_vs_xmit.c | 1039 u16 csum_start = skb_checksum_start_offset(skb); in ipvs_gue_encap() local 1046 if (csum_start < hdrlen) in ipvs_gue_encap() 1049 csum_start -= hdrlen; in ipvs_gue_encap() 1051 pd[0] = htons(csum_start); in ipvs_gue_encap() 1052 pd[1] = htons(csum_start + skb->csum_offset); in ipvs_gue_encap()
|
/linux-6.12.1/drivers/net/can/ |
D | vxcan.c | 67 skb->csum_start = 0; in vxcan_xmit()
|