/Linux-v6.6/include/net/ |
D | gro.h | 91 #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) macro 96 return ++NAPI_GRO_CB(skb)->recursion_counter == GRO_RECURSION_LIMIT; in gro_recursion_inc_test() 105 NAPI_GRO_CB(skb)->flush |= 1; 120 NAPI_GRO_CB(skb)->flush |= 1; 129 return NAPI_GRO_CB(skb)->data_offset; 134 return skb->len - NAPI_GRO_CB(skb)->data_offset; in skb_gro_len() 139 NAPI_GRO_CB(skb)->data_offset += len; in skb_gro_pull() 145 return NAPI_GRO_CB(skb)->frag0 + offset; in skb_gro_header_fast() 150 return NAPI_GRO_CB(skb)->frag0_len < hlen; in skb_gro_header_hard() 155 NAPI_GRO_CB(skb)->frag0 = NULL; in skb_gro_frag0_invalidate() [all …]
|
D | inet_common.h | 80 NAPI_GRO_CB(skb)->flush |= 1, NULL : \
|
/Linux-v6.6/net/core/ |
D | gro.c | 122 if (unlikely(p->len + len >= gro_max_size || NAPI_GRO_CB(skb)->flush)) in skb_gro_receive() 126 if (NAPI_GRO_CB(skb)->proto != IPPROTO_TCP || in skb_gro_receive() 133 segs = NAPI_GRO_CB(skb)->count; in skb_gro_receive() 134 lp = NAPI_GRO_CB(p)->last; in skb_gro_receive() 167 NAPI_GRO_CB(skb)->free = NAPI_GRO_FREE; in skb_gro_receive() 193 NAPI_GRO_CB(skb)->free = NAPI_GRO_FREE_STOLEN_HEAD; in skb_gro_receive() 213 if (NAPI_GRO_CB(p)->last == p) in skb_gro_receive() 216 NAPI_GRO_CB(p)->last->next = skb; in skb_gro_receive() 217 NAPI_GRO_CB(p)->last = skb; in skb_gro_receive() 222 NAPI_GRO_CB(p)->count += segs; in skb_gro_receive() [all …]
|
/Linux-v6.6/net/ipv4/ |
D | udp_offload.c | 441 if (NAPI_GRO_CB(p)->last == p) in skb_gro_receive_list() 444 NAPI_GRO_CB(p)->last->next = skb; in skb_gro_receive_list() 448 NAPI_GRO_CB(p)->last = skb; in skb_gro_receive_list() 449 NAPI_GRO_CB(p)->count++; in skb_gro_receive_list() 457 NAPI_GRO_CB(skb)->same_flow = 1; in skb_gro_receive_list() 476 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 483 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 490 if (!NAPI_GRO_CB(p)->same_flow) in udp_gro_receive_segment() 497 NAPI_GRO_CB(p)->same_flow = 0; in udp_gro_receive_segment() 501 if (NAPI_GRO_CB(skb)->is_flist != NAPI_GRO_CB(p)->is_flist) { in udp_gro_receive_segment() [all …]
|
D | tcp_offload.c | 219 if (!NAPI_GRO_CB(p)->same_flow) in tcp_gro_receive() 225 NAPI_GRO_CB(p)->same_flow = 0; in tcp_gro_receive() 236 flush = NAPI_GRO_CB(p)->flush; in tcp_gro_receive() 249 if (NAPI_GRO_CB(p)->flush_id != 1 || in tcp_gro_receive() 250 NAPI_GRO_CB(p)->count != 1 || in tcp_gro_receive() 251 !NAPI_GRO_CB(p)->is_atomic) in tcp_gro_receive() 252 flush |= NAPI_GRO_CB(p)->flush_id; in tcp_gro_receive() 254 NAPI_GRO_CB(p)->is_atomic = false; in tcp_gro_receive() 282 flush = len != NAPI_GRO_CB(skb)->count * skb_shinfo(skb)->gso_size; in tcp_gro_receive() 290 if (p && (!NAPI_GRO_CB(skb)->same_flow || flush)) in tcp_gro_receive() [all …]
|
D | gre_offload.c | 134 if (NAPI_GRO_CB(skb)->encap_mark) in gre_gro_receive() 137 NAPI_GRO_CB(skb)->encap_mark = 1; in gre_gro_receive() 159 if ((greh->flags & GRE_CSUM) && NAPI_GRO_CB(skb)->is_fou) in gre_gro_receive() 184 if ((greh->flags & GRE_CSUM) && !NAPI_GRO_CB(skb)->flush) { in gre_gro_receive() 195 if (!NAPI_GRO_CB(p)->same_flow) in gre_gro_receive() 210 NAPI_GRO_CB(p)->same_flow = 0; in gre_gro_receive() 216 NAPI_GRO_CB(p)->same_flow = 0; in gre_gro_receive()
|
D | fou_core.c | 246 NAPI_GRO_CB(skb)->encap_mark = 0; in fou_gro_receive() 249 NAPI_GRO_CB(skb)->is_fou = 1; in fou_gro_receive() 251 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_receive() 270 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_complete() 295 if (!NAPI_GRO_CB(skb)->csum_valid) in gue_gro_remcsum() 398 if (!NAPI_GRO_CB(p)->same_flow) in gue_gro_receive() 407 NAPI_GRO_CB(p)->same_flow = 0; in gue_gro_receive() 414 NAPI_GRO_CB(p)->same_flow = 0; in gue_gro_receive() 429 NAPI_GRO_CB(skb)->encap_mark = 0; in gue_gro_receive() 432 NAPI_GRO_CB(skb)->is_fou = 1; in gue_gro_receive() [all …]
|
D | af_inet.c | 1504 NAPI_GRO_CB(skb)->proto = proto; in inet_gro_receive() 1513 if (!NAPI_GRO_CB(p)->same_flow) in inet_gro_receive() 1525 NAPI_GRO_CB(p)->same_flow = 0; in inet_gro_receive() 1530 NAPI_GRO_CB(p)->flush |= in inet_gro_receive() 1535 NAPI_GRO_CB(p)->flush |= flush; in inet_gro_receive() 1549 if (!NAPI_GRO_CB(p)->is_atomic || in inet_gro_receive() 1551 flush_id ^= NAPI_GRO_CB(p)->count; in inet_gro_receive() 1558 if (NAPI_GRO_CB(skb)->is_atomic) in inet_gro_receive() 1559 NAPI_GRO_CB(p)->flush_id = flush_id; in inet_gro_receive() 1561 NAPI_GRO_CB(p)->flush_id |= flush_id; in inet_gro_receive() [all …]
|
D | esp4_offload.c | 87 NAPI_GRO_CB(skb)->same_flow = 0; in esp4_gro_receive() 88 NAPI_GRO_CB(skb)->flush = 1; in esp4_gro_receive()
|
/Linux-v6.6/net/ipv6/ |
D | ip6_offload.c | 36 NAPI_GRO_CB(skb)->flush |= 1, NULL : \ 231 NAPI_GRO_CB(skb)->proto = proto; in ipv6_gro_receive() 240 if (!NAPI_GRO_CB(p)->same_flow) in ipv6_gro_receive() 257 NAPI_GRO_CB(p)->same_flow = 0; in ipv6_gro_receive() 266 NAPI_GRO_CB(p)->flush |= !!((first_word & htonl(0x0FF00000)) | in ipv6_gro_receive() 268 NAPI_GRO_CB(p)->flush |= flush; in ipv6_gro_receive() 273 if (NAPI_GRO_CB(skb)->is_atomic) in ipv6_gro_receive() 274 NAPI_GRO_CB(p)->flush_id = 0; in ipv6_gro_receive() 277 NAPI_GRO_CB(skb)->is_atomic = true; in ipv6_gro_receive() 278 NAPI_GRO_CB(skb)->flush |= flush; in ipv6_gro_receive() [all …]
|
D | udp_offload.c | 141 if (NAPI_GRO_CB(skb)->flush) in udp6_gro_receive() 152 NAPI_GRO_CB(skb)->is_ipv6 = 1; in udp6_gro_receive() 161 NAPI_GRO_CB(skb)->flush = 1; in udp6_gro_receive() 171 if (NAPI_GRO_CB(skb)->is_flist && !NAPI_GRO_CB(skb)->encap_mark) { in udp6_gro_complete() 175 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in udp6_gro_complete()
|
D | tcpv6_offload.c | 20 if (!NAPI_GRO_CB(skb)->flush && in tcp6_gro_receive() 23 NAPI_GRO_CB(skb)->flush = 1; in tcp6_gro_receive()
|
D | esp6_offload.c | 114 NAPI_GRO_CB(skb)->same_flow = 0; in esp6_gro_receive() 115 NAPI_GRO_CB(skb)->flush = 1; in esp6_gro_receive()
|
/Linux-v6.6/net/ethernet/ |
D | eth.c | 424 if (!NAPI_GRO_CB(p)->same_flow) in eth_gro_receive() 429 NAPI_GRO_CB(p)->same_flow = 0; in eth_gro_receive()
|
/Linux-v6.6/net/8021q/ |
D | vlan_core.c | 485 if (!NAPI_GRO_CB(p)->same_flow) in vlan_gro_receive() 490 NAPI_GRO_CB(p)->same_flow = 0; in vlan_gro_receive()
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/ |
D | en_rx.c | 1324 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in mlx5e_shampo_update_hdr() 1618 if (NAPI_GRO_CB(skb)->count != 1) in mlx5e_shampo_complete_rx_cqe() 2268 if (NAPI_GRO_CB(skb)->count > 1) in mlx5e_shampo_flush_skb() 2346 NAPI_GRO_CB(*skb)->count = 1; in mlx5e_handle_rx_cqe_mpwrq_shampo() 2349 NAPI_GRO_CB(*skb)->count++; in mlx5e_handle_rx_cqe_mpwrq_shampo() 2350 if (NAPI_GRO_CB(*skb)->count == 2 && in mlx5e_handle_rx_cqe_mpwrq_shampo()
|
/Linux-v6.6/drivers/net/ |
D | geneve.c | 517 if (!NAPI_GRO_CB(p)->same_flow) in geneve_gro_receive() 523 NAPI_GRO_CB(p)->same_flow = 0; in geneve_gro_receive()
|
/Linux-v6.6/drivers/net/vxlan/ |
D | vxlan_core.c | 664 if (!NAPI_GRO_CB(skb)->csum_valid) in vxlan_gro_remcsum() 714 if (!NAPI_GRO_CB(p)->same_flow) in vxlan_gro_prepare_receive() 720 NAPI_GRO_CB(p)->same_flow = 0; in vxlan_gro_prepare_receive()
|
/Linux-v6.6/drivers/net/ethernet/qlogic/qede/ |
D | qede_fp.c | 1015 NAPI_GRO_CB(skb)->count = le16_to_cpu(cqe->num_of_coalesced_segs); in qede_tpa_end()
|
/Linux-v6.6/drivers/net/ethernet/hisilicon/hns3/ |
D | hns3_enet.c | 3857 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in hns3_gro_complete() 4164 NAPI_GRO_CB(skb)->count = hnae3_get_field(l234info, in hns3_set_gro_and_checksum()
|
/Linux-v6.6/drivers/net/ethernet/broadcom/bnx2x/ |
D | bnx2x_cmn.c | 543 NAPI_GRO_CB(skb)->count = num_of_coalesced_segs; in bnx2x_set_gro_params()
|
/Linux-v6.6/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt.c | 1563 NAPI_GRO_CB(skb)->count = segs; in bnxt_gro_skb()
|