Lines Matching refs:shinfo
276 struct skb_shared_info *shinfo; in __build_skb_around() local
292 shinfo = skb_shinfo(skb); in __build_skb_around()
293 memset(shinfo, 0, offsetof(struct skb_shared_info, dataref)); in __build_skb_around()
294 atomic_set(&shinfo->dataref, 1); in __build_skb_around()
766 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_release_data() local
771 &shinfo->dataref)) in skb_release_data()
775 bool skip_unref = shinfo->flags & SKBFL_MANAGED_FRAG_REFS; in skb_release_data()
782 for (i = 0; i < shinfo->nr_frags; i++) in skb_release_data()
783 __skb_frag_unref(&shinfo->frags[i], skb->pp_recycle); in skb_release_data()
786 if (shinfo->frag_list) in skb_release_data()
787 kfree_skb_list(shinfo->frag_list); in skb_release_data()
1926 struct skb_shared_info *shinfo; in __skb_unclone_keeptruesize() local
1941 shinfo = skb_shinfo(skb); in __skb_unclone_keeptruesize()
1947 shinfo, in __skb_unclone_keeptruesize()
1948 offsetof(struct skb_shared_info, frags[shinfo->nr_frags])); in __skb_unclone_keeptruesize()
5542 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_transport_seglen() local
5549 if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) in skb_gso_transport_seglen()
5551 } else if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) { in skb_gso_transport_seglen()
5555 } else if (shinfo->gso_type & SKB_GSO_UDP_L4) { in skb_gso_transport_seglen()
5562 return thlen + shinfo->gso_size; in skb_gso_transport_seglen()
5623 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_size_check() local
5626 if (shinfo->gso_size != GSO_BY_FRAGS) in skb_gso_size_check()
6237 struct skb_shared_info *shinfo, int eat, in pskb_carve_frag_list() argument
6240 struct sk_buff *list = shinfo->frag_list; in pskb_carve_frag_list()
6275 while ((list = shinfo->frag_list) != insp) { in pskb_carve_frag_list()
6276 shinfo->frag_list = list->next; in pskb_carve_frag_list()
6282 shinfo->frag_list = clone; in pskb_carve_frag_list()
6297 struct skb_shared_info *shinfo; in pskb_carve_inside_nonlinear() local
6317 shinfo = (struct skb_shared_info *)(data + size); in pskb_carve_inside_nonlinear()
6322 shinfo->frags[k] = skb_shinfo(skb)->frags[i]; in pskb_carve_inside_nonlinear()
6333 skb_frag_off_add(&shinfo->frags[0], off - pos); in pskb_carve_inside_nonlinear()
6334 skb_frag_size_sub(&shinfo->frags[0], off - pos); in pskb_carve_inside_nonlinear()
6341 shinfo->nr_frags = k; in pskb_carve_inside_nonlinear()
6346 if (k == 0 && pskb_carve_frag_list(skb, shinfo, off - pos, gfp_mask)) { in pskb_carve_inside_nonlinear()