/linux/include/net/ |
H A D | gro.h | 103 #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) macro 108 return ++NAPI_GRO_CB(skb)->recursion_counter == GRO_RECURSION_LIMIT; in gro_recursion_inc_test() 117 NAPI_GRO_CB(skb)->flush |= 1; in call_gro_receive() 132 NAPI_GRO_CB(skb)->flush |= 1; in call_gro_receive_sk() 141 return NAPI_GRO_CB(skb)->data_offset; in skb_gro_offset() 146 return skb->len - NAPI_GRO_CB(skb)->data_offset; in skb_gro_len() 151 NAPI_GRO_CB(skb)->data_offset += len; in skb_gro_pull() 157 return NAPI_GRO_CB(skb)->frag0 + offset; in skb_gro_header_fast() 163 return likely(hlen <= NAPI_GRO_CB(skb)->frag0_len); in skb_gro_may_pull() 188 return NAPI_GRO_CB(skb)->network_offsets[NAPI_GRO_CB(skb)->encap_mark]; in skb_gro_receive_network_offset() [all …]
|
H A D | inet_common.h | 80 NAPI_GRO_CB(skb)->flush |= 1, NULL : \
|
/linux/net/core/ |
H A D | gro.c | 112 NAPI_GRO_CB(skb)->flush)) in skb_gro_receive() 116 if (NAPI_GRO_CB(skb)->proto != IPPROTO_TCP || in skb_gro_receive() 123 segs = NAPI_GRO_CB(skb)->count; in skb_gro_receive() 124 lp = NAPI_GRO_CB(p)->last; in skb_gro_receive() 157 NAPI_GRO_CB(skb)->free = NAPI_GRO_FREE; in skb_gro_receive() 183 NAPI_GRO_CB(skb)->free = NAPI_GRO_FREE_STOLEN_HEAD; in skb_gro_receive() 204 if (NAPI_GRO_CB(p)->last == p) in skb_gro_receive() 207 NAPI_GRO_CB(p)->last->next = skb; in skb_gro_receive() 208 NAPI_GRO_CB(p)->last = skb; in skb_gro_receive() 213 NAPI_GRO_CB(p)->count += segs; in skb_gro_receive() [all …]
|
/linux/net/ipv4/ |
H A D | udp_offload.c | 492 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 499 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 506 if (!NAPI_GRO_CB(p)->same_flow) in udp_gro_receive_segment() 513 NAPI_GRO_CB(p)->same_flow = 0; in udp_gro_receive_segment() 517 if (NAPI_GRO_CB(skb)->is_flist != NAPI_GRO_CB(p)->is_flist) { in udp_gro_receive_segment() 518 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 533 if (NAPI_GRO_CB(skb)->is_flist) { in udp_gro_receive_segment() 535 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 540 NAPI_GRO_CB(skb)->flush = 1; in udp_gro_receive_segment() 553 NAPI_GRO_CB(p)->count >= UDP_GRO_CNT_MAX) in udp_gro_receive_segment() [all …]
|
H A D | tcp_offload.c | 266 if (!NAPI_GRO_CB(p)->same_flow) in tcp_gro_lookup() 271 NAPI_GRO_CB(p)->same_flow = 0; in tcp_gro_lookup() 353 if (unlikely(NAPI_GRO_CB(p)->is_flist)) { in tcp_gro_receive() 357 flush |= NAPI_GRO_CB(p)->count >= 64; in tcp_gro_receive() 375 flush = len != NAPI_GRO_CB(skb)->count * skb_shinfo(skb)->gso_size; in tcp_gro_receive() 383 if (p && (!NAPI_GRO_CB(skb)->same_flow || flush)) in tcp_gro_receive() 386 NAPI_GRO_CB(skb)->flush |= (flush != 0); in tcp_gro_receive() 404 shinfo->gso_segs = NAPI_GRO_CB(skb)->count; in tcp_gro_complete() 425 NAPI_GRO_CB(skb)->is_flist = NAPI_GRO_CB(p)->is_flist; in tcp4_check_fraglist_gro() 436 NAPI_GRO_CB(skb)->is_flist = !sk; in tcp4_check_fraglist_gro() [all …]
|
H A 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()
|
H A D | fou_core.c | 252 NAPI_GRO_CB(skb)->encap_mark = 0; in fou_gro_receive() 255 NAPI_GRO_CB(skb)->is_fou = 1; in fou_gro_receive() 257 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_receive() 284 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_complete() 311 if (!NAPI_GRO_CB(skb)->csum_valid) in gue_gro_remcsum() 417 if (!NAPI_GRO_CB(p)->same_flow) in gue_gro_receive() 426 NAPI_GRO_CB(p)->same_flow = 0; in gue_gro_receive() 433 NAPI_GRO_CB(p)->same_flow = 0; in gue_gro_receive() 448 NAPI_GRO_CB(skb)->encap_mark = 0; in gue_gro_receive() 451 NAPI_GRO_CB(skb)->is_fou = 1; in gue_gro_receive() [all …]
|
H A D | udp.c | 761 const u16 offset = NAPI_GRO_CB(skb)->network_offsets[skb->encapsulation]; in udp4_lib_lookup_skb()
|
/linux/net/ipv6/ |
H A D | tcpv6_offload.c | 32 NAPI_GRO_CB(skb)->is_flist = NAPI_GRO_CB(p)->is_flist; in tcp6_check_fraglist_gro() 43 NAPI_GRO_CB(skb)->is_flist = !sk; in tcp6_check_fraglist_gro() 55 if (!NAPI_GRO_CB(skb)->flush && in tcp6_gro_receive() 69 NAPI_GRO_CB(skb)->flush = 1; in tcp6_gro_receive() 75 const u16 offset = NAPI_GRO_CB(skb)->network_offsets[skb->encapsulation]; in tcp6_gro_complete() 79 if (unlikely(NAPI_GRO_CB(skb)->is_flist)) { in tcp6_gro_complete() 81 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in tcp6_gro_complete()
|
H A 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() 167 const u16 offset = NAPI_GRO_CB(skb)->network_offsets[skb->encapsulation]; in udp6_gro_complete() 172 if (NAPI_GRO_CB(skb)->is_flist && !NAPI_GRO_CB(skb)->encap_mark) { in udp6_gro_complete() 176 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in udp6_gro_complete()
|
H A D | ip6_offload.c | 36 NAPI_GRO_CB(skb)->flush |= 1, NULL : \ 239 NAPI_GRO_CB(skb)->network_offsets[NAPI_GRO_CB(skb)->encap_mark] = off; in ipv6_gro_receive() 259 NAPI_GRO_CB(skb)->proto = proto; in ipv6_gro_receive() 268 if (!NAPI_GRO_CB(p)->same_flow) in ipv6_gro_receive() 285 NAPI_GRO_CB(p)->same_flow = 0; in ipv6_gro_receive() 295 NAPI_GRO_CB(skb)->flush |= flush; in ipv6_gro_receive() 313 if (NAPI_GRO_CB(skb)->encap_mark) { in sit_ip6ip6_gro_receive() 314 NAPI_GRO_CB(skb)->flush = 1; in sit_ip6ip6_gro_receive() 318 NAPI_GRO_CB(sk in sit_ip6ip6_gro_receive() [all...] |
H A D | xfrm6_input.c | 202 NAPI_GRO_CB(skb)->proto = IPPROTO_UDP; in xfrm6_gro_udp_encap_rcv() 212 NAPI_GRO_CB(skb)->same_flow = 0; in xfrm6_gro_udp_encap_rcv() 213 NAPI_GRO_CB(skb)->flush = 1; in xfrm6_gro_udp_encap_rcv()
|
H A D | udp.c | 421 const u16 offset = NAPI_GRO_CB(skb)->network_offsets[skb->encapsulation]; in udp6_lib_lookup_skb()
|
/linux/net/8021q/ |
H A D | vlan_core.c | 481 NAPI_GRO_CB(skb)->network_offsets[NAPI_GRO_CB(skb)->encap_mark] = hlen; in vlan_gro_receive() 494 if (!NAPI_GRO_CB(p)->same_flow) in vlan_gro_receive() 499 NAPI_GRO_CB(p)->same_flow = 0; in vlan_gro_receive()
|
/linux/net/ethernet/ |
H A D | eth.c | 412 if (!NAPI_GRO_CB(p)->same_flow) in eth_gro_receive() 417 NAPI_GRO_CB(p)->same_flow = 0; in eth_gro_receive()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_rx.c | 1318 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in mlx5e_shampo_update_hdr() 1610 if (NAPI_GRO_CB(skb)->count != 1) in mlx5e_shampo_complete_rx_cqe() 2251 u16 gro_count = NAPI_GRO_CB(skb)->count; in mlx5e_shampo_flush_skb() 2323 NAPI_GRO_CB(*skb)->count = 1; in mlx5e_handle_rx_cqe_mpwrq_shampo() 2326 NAPI_GRO_CB(*skb)->count++; in mlx5e_handle_rx_cqe_mpwrq_shampo() 2327 if (NAPI_GRO_CB(*skb)->count == 2 && in mlx5e_handle_rx_cqe_mpwrq_shampo()
|
/linux/drivers/net/ |
H A D | geneve.c | 527 if (!NAPI_GRO_CB(p)->same_flow) in geneve_gro_receive() 533 NAPI_GRO_CB(p)->same_flow = 0; in geneve_gro_receive()
|
/linux/drivers/net/ethernet/qlogic/qede/ |
H A D | qede_fp.c | 1015 NAPI_GRO_CB(skb)->count = le16_to_cpu(cqe->num_of_coalesced_segs); in qede_tpa_end()
|
/linux/drivers/net/vxlan/ |
H A D | vxlan_core.c | 663 if (!NAPI_GRO_CB(skb)->csum_valid) in vxlan_gro_remcsum() 713 if (!NAPI_GRO_CB(p)->same_flow) in vxlan_gro_prepare_receive() 719 NAPI_GRO_CB(p)->same_flow = 0; in vxlan_gro_prepare_receive()
|
/linux/drivers/net/ethernet/hisilicon/hns3/ |
H A D | hns3_enet.c | 3855 skb_shinfo(skb)->gso_segs = NAPI_GRO_CB(skb)->count; in hns3_gro_complete() 4162 NAPI_GRO_CB(skb)->count = hnae3_get_field(l234info, in hns3_set_gro_and_checksum()
|
/linux/drivers/net/ethernet/intel/idpf/ |
H A D | idpf_txrx.c | 3012 NAPI_GRO_CB(skb)->count = rsc_segments; in idpf_rx_rsc()
|
/linux/drivers/net/ethernet/broadcom/bnx2x/ |
H A D | bnx2x_cmn.c | 544 NAPI_GRO_CB(skb)->count = num_of_coalesced_segs; in bnx2x_set_gro_params()
|
/linux/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt.c | 1748 NAPI_GRO_CB(skb)->count = segs; in bnxt_gro_skb()
|