Lines Matching refs:shinfo
185 struct skb_shared_info *shinfo; in __alloc_skb() local
237 shinfo = skb_shinfo(skb); in __alloc_skb()
238 memset(shinfo, 0, offsetof(struct skb_shared_info, dataref)); in __alloc_skb()
239 atomic_set(&shinfo->dataref, 1); in __alloc_skb()
264 struct skb_shared_info *shinfo; in __build_skb_around() local
280 shinfo = skb_shinfo(skb); in __build_skb_around()
281 memset(shinfo, 0, offsetof(struct skb_shared_info, dataref)); in __build_skb_around()
282 atomic_set(&shinfo->dataref, 1); in __build_skb_around()
596 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_release_data() local
601 &shinfo->dataref)) in skb_release_data()
604 for (i = 0; i < shinfo->nr_frags; i++) in skb_release_data()
605 __skb_frag_unref(&shinfo->frags[i]); in skb_release_data()
607 if (shinfo->frag_list) in skb_release_data()
608 kfree_skb_list(shinfo->frag_list); in skb_release_data()
5152 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_transport_seglen() local
5159 if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) in skb_gso_transport_seglen()
5161 } else if (likely(shinfo->gso_type & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6))) { in skb_gso_transport_seglen()
5165 } else if (shinfo->gso_type & SKB_GSO_UDP_L4) { in skb_gso_transport_seglen()
5172 return thlen + shinfo->gso_size; in skb_gso_transport_seglen()
5233 const struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_gso_size_check() local
5236 if (shinfo->gso_size != GSO_BY_FRAGS) in skb_gso_size_check()
5774 struct skb_shared_info *shinfo, int eat, in pskb_carve_frag_list() argument
5777 struct sk_buff *list = shinfo->frag_list; in pskb_carve_frag_list()
5812 while ((list = shinfo->frag_list) != insp) { in pskb_carve_frag_list()
5813 shinfo->frag_list = list->next; in pskb_carve_frag_list()
5819 shinfo->frag_list = clone; in pskb_carve_frag_list()
5834 struct skb_shared_info *shinfo; in pskb_carve_inside_nonlinear() local
5855 shinfo = (struct skb_shared_info *)(data + size); in pskb_carve_inside_nonlinear()
5860 shinfo->frags[k] = skb_shinfo(skb)->frags[i]; in pskb_carve_inside_nonlinear()
5871 skb_frag_off_add(&shinfo->frags[0], off - pos); in pskb_carve_inside_nonlinear()
5872 skb_frag_size_sub(&shinfo->frags[0], off - pos); in pskb_carve_inside_nonlinear()
5879 shinfo->nr_frags = k; in pskb_carve_inside_nonlinear()
5885 pskb_carve_frag_list(skb, shinfo, off - pos, gfp_mask); in pskb_carve_inside_nonlinear()