Lines Matching refs:skb_shinfo

362 	shinfo = skb_shinfo(skb);  in __finalize_skb_around()
860 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_coalesce_rx_frag()
877 skb_drop_list(&skb_shinfo(skb)->frag_list); in skb_drop_fraglist()
964 struct skb_shared_info *shinfo = skb_shinfo(skb); in skb_release_data()
1165 struct skb_shared_info *sh = skb_shinfo(skb); in skb_dump()
1223 for (i = 0; len && i < skb_shinfo(skb)->nr_frags; i++) { in skb_dump()
1224 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_dump()
1448 atomic_inc(&(skb_shinfo(skb)->dataref)); in __skb_clone()
1471 skb_shinfo(n)->frag_list = first; in alloc_skb_for_msg()
1755 skb_shinfo(skb)->flags &= ~SKBFL_MANAGED_FRAG_REFS; in __skb_zcopy_downgrade_managed()
1756 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) in __skb_zcopy_downgrade_managed()
1798 int num_frags = skb_shinfo(skb)->nr_frags; in skb_copy_ubufs()
1835 skb_frag_t *f = &skb_shinfo(skb)->frags[i]; in skb_copy_ubufs()
1870 skb_shinfo(skb)->nr_frags = new_frags; in skb_copy_ubufs()
1942 skb_shinfo(new)->gso_size = skb_shinfo(old)->gso_size; in skb_copy_header()
1943 skb_shinfo(new)->gso_segs = skb_shinfo(old)->gso_segs; in skb_copy_header()
1944 skb_shinfo(new)->gso_type = skb_shinfo(old)->gso_type; in skb_copy_header()
1978 if (WARN_ON_ONCE(skb_shinfo(skb)->gso_type & SKB_GSO_FRAGLIST)) in skb_copy()
2038 if (skb_shinfo(skb)->nr_frags) { in __pskb_copy_fclone()
2047 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in __pskb_copy_fclone()
2048 skb_shinfo(n)->frags[i] = skb_shinfo(skb)->frags[i]; in __pskb_copy_fclone()
2051 skb_shinfo(n)->nr_frags = i; in __pskb_copy_fclone()
2055 skb_shinfo(n)->frag_list = skb_shinfo(skb)->frag_list; in __pskb_copy_fclone()
2110 skb_shinfo(skb), in pskb_expand_head()
2111 offsetof(struct skb_shared_info, frags[skb_shinfo(skb)->nr_frags])); in pskb_expand_head()
2123 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) in pskb_expand_head()
2148 atomic_set(&skb_shinfo(skb)->dataref, 1); in pskb_expand_head()
2222 shinfo = skb_shinfo(skb); in __skb_unclone_keeptruesize()
2316 if (WARN_ON_ONCE(skb_shinfo(skb)->gso_type & SKB_GSO_FRAGLIST)) in skb_copy_expand()
2526 int nfrags = skb_shinfo(skb)->nr_frags; in ___pskb_trim()
2539 int end = offset + skb_frag_size(&skb_shinfo(skb)->frags[i]); in ___pskb_trim()
2546 skb_frag_size_set(&skb_shinfo(skb)->frags[i++], len - offset); in ___pskb_trim()
2549 skb_shinfo(skb)->nr_frags = i; in ___pskb_trim()
2559 for (fragp = &skb_shinfo(skb)->frag_list; (frag = *fragp); in ___pskb_trim()
2677 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in __pskb_pull_tail()
2678 int size = skb_frag_size(&skb_shinfo(skb)->frags[i]); in __pskb_pull_tail()
2693 struct sk_buff *list = skb_shinfo(skb)->frag_list; in __pskb_pull_tail()
2707 skb_shinfo(skb)->gso_type |= SKB_GSO_DODGY; in __pskb_pull_tail()
2730 while ((list = skb_shinfo(skb)->frag_list) != insp) { in __pskb_pull_tail()
2731 skb_shinfo(skb)->frag_list = list->next; in __pskb_pull_tail()
2737 skb_shinfo(skb)->frag_list = clone; in __pskb_pull_tail()
2745 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in __pskb_pull_tail()
2746 int size = skb_frag_size(&skb_shinfo(skb)->frags[i]); in __pskb_pull_tail()
2752 skb_frag_t *frag = &skb_shinfo(skb)->frags[k]; in __pskb_pull_tail()
2754 *frag = skb_shinfo(skb)->frags[i]; in __pskb_pull_tail()
2765 skb_shinfo(skb)->nr_frags = k; in __pskb_pull_tail()
2813 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in skb_copy_bits()
2815 skb_frag_t *f = &skb_shinfo(skb)->frags[i]; in skb_copy_bits()
3001 for (seg = 0; seg < skb_shinfo(skb)->nr_frags; seg++) { in __skb_splice_bits()
3002 const skb_frag_t *f = &skb_shinfo(skb)->frags[seg]; in __skb_splice_bits()
3117 for (fragidx = 0; fragidx < skb_shinfo(skb)->nr_frags; fragidx++) { in __skb_send_sock()
3118 skb_frag_t *frag = &skb_shinfo(skb)->frags[fragidx]; in __skb_send_sock()
3126 for (; len && fragidx < skb_shinfo(skb)->nr_frags; fragidx++) { in __skb_send_sock()
3127 skb_frag_t *frag = &skb_shinfo(skb)->frags[fragidx]; in __skb_send_sock()
3160 skb = skb_shinfo(skb)->frag_list; in __skb_send_sock()
3221 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in skb_store_bits()
3222 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_store_bits()
3300 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in __skb_checksum()
3302 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in __skb_checksum()
3400 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in skb_copy_and_csum_bits()
3405 end = start + skb_frag_size(&skb_shinfo(skb)->frags[i]); in skb_copy_and_csum_bits()
3407 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_copy_and_csum_bits()
3562 skb_shinfo(from)->nr_frags >= MAX_SKB_FRAGS) { in skb_zerocopy_headlen()
3633 for (i = 0; i < skb_shinfo(from)->nr_frags; i++) { in skb_zerocopy()
3638 skb_shinfo(to)->frags[j] = skb_shinfo(from)->frags[i]; in skb_zerocopy()
3639 size = min_t(int, skb_frag_size(&skb_shinfo(to)->frags[j]), in skb_zerocopy()
3641 skb_frag_size_set(&skb_shinfo(to)->frags[j], size); in skb_zerocopy()
3646 skb_shinfo(to)->nr_frags = j; in skb_zerocopy()
3877 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) in skb_split_inside_header()
3878 skb_shinfo(skb1)->frags[i] = skb_shinfo(skb)->frags[i]; in skb_split_inside_header()
3880 skb_shinfo(skb1)->nr_frags = skb_shinfo(skb)->nr_frags; in skb_split_inside_header()
3881 skb_shinfo(skb)->nr_frags = 0; in skb_split_inside_header()
3894 const int nfrags = skb_shinfo(skb)->nr_frags; in skb_split_no_header()
3896 skb_shinfo(skb)->nr_frags = 0; in skb_split_no_header()
3902 int size = skb_frag_size(&skb_shinfo(skb)->frags[i]); in skb_split_no_header()
3905 skb_shinfo(skb1)->frags[k] = skb_shinfo(skb)->frags[i]; in skb_split_no_header()
3917 skb_frag_off_add(&skb_shinfo(skb1)->frags[0], len - pos); in skb_split_no_header()
3918 skb_frag_size_sub(&skb_shinfo(skb1)->frags[0], len - pos); in skb_split_no_header()
3919 skb_frag_size_set(&skb_shinfo(skb)->frags[i], len - pos); in skb_split_no_header()
3920 skb_shinfo(skb)->nr_frags++; in skb_split_no_header()
3924 skb_shinfo(skb)->nr_frags++; in skb_split_no_header()
3927 skb_shinfo(skb1)->nr_frags = k; in skb_split_no_header()
3943 skb_shinfo(skb1)->flags |= skb_shinfo(skb)->flags & zc_flags; in skb_split()
3993 to = skb_shinfo(tgt)->nr_frags; in skb_shift()
3994 fragfrom = &skb_shinfo(skb)->frags[from]; in skb_shift()
4013 fragfrom = &skb_shinfo(skb)->frags[from]; in skb_shift()
4014 fragto = &skb_shinfo(tgt)->frags[merge]; in skb_shift()
4028 (skb_shinfo(skb)->nr_frags - from) > (MAX_SKB_FRAGS - to)) in skb_shift()
4034 while ((todo > 0) && (from < skb_shinfo(skb)->nr_frags)) { in skb_shift()
4038 fragfrom = &skb_shinfo(skb)->frags[from]; in skb_shift()
4039 fragto = &skb_shinfo(tgt)->frags[to]; in skb_shift()
4063 skb_shinfo(tgt)->nr_frags = to; in skb_shift()
4066 fragfrom = &skb_shinfo(skb)->frags[0]; in skb_shift()
4067 fragto = &skb_shinfo(tgt)->frags[merge]; in skb_shift()
4075 while (from < skb_shinfo(skb)->nr_frags) in skb_shift()
4076 skb_shinfo(skb)->frags[to++] = skb_shinfo(skb)->frags[from++]; in skb_shift()
4077 skb_shinfo(skb)->nr_frags = to; in skb_shift()
4079 BUG_ON(todo > 0 && !skb_shinfo(skb)->nr_frags); in skb_shift()
4166 while (st->frag_idx < skb_shinfo(st->cur_skb)->nr_frags) { in skb_seq_read()
4169 frag = &skb_shinfo(st->cur_skb)->frags[st->frag_idx]; in skb_seq_read()
4212 st->cur_skb = skb_shinfo(st->root_skb)->frag_list; in skb_seq_read()
4287 int i = skb_shinfo(skb)->nr_frags; in skb_append_pagefrags()
4290 skb_frag_size_add(&skb_shinfo(skb)->frags[i - 1], size); in skb_append_pagefrags()
4341 struct sk_buff *list_skb = skb_shinfo(skb)->frag_list; in skb_segment_list()
4356 skb_shinfo(skb)->frag_list = NULL; in skb_segment_list()
4443 struct sk_buff *list_skb = skb_shinfo(head_skb)->frag_list; in skb_segment()
4444 unsigned int mss = skb_shinfo(head_skb)->gso_size; in skb_segment()
4459 if ((skb_shinfo(head_skb)->gso_type & SKB_GSO_DODGY) && in skb_segment()
4494 !net_gso_ok(features, skb_shinfo(head_skb)->gso_type)) in skb_segment()
4538 nfrags = skb_shinfo(head_skb)->nr_frags; in skb_segment()
4539 frag = skb_shinfo(head_skb)->frags; in skb_segment()
4567 nfrags = skb_shinfo(list_skb)->nr_frags; in skb_segment()
4568 frag = skb_shinfo(list_skb)->frags; in skb_segment()
4653 nskb_frag = skb_shinfo(nskb)->frags; in skb_segment()
4658 skb_shinfo(nskb)->flags |= skb_shinfo(head_skb)->flags & in skb_segment()
4672 nfrags = skb_shinfo(list_skb)->nr_frags; in skb_segment()
4673 frag = skb_shinfo(list_skb)->frags; in skb_segment()
4688 if (unlikely(skb_shinfo(nskb)->nr_frags >= in skb_segment()
4706 skb_shinfo(nskb)->nr_frags++; in skb_segment()
4749 int type = skb_shinfo(head_skb)->gso_type; in skb_segment()
4750 unsigned short gso_size = skb_shinfo(head_skb)->gso_size; in skb_segment()
4760 skb_shinfo(iter)->gso_size = gso_size; in skb_segment()
4761 skb_shinfo(iter)->gso_segs = partial_segs; in skb_segment()
4762 skb_shinfo(iter)->gso_type = type; in skb_segment()
4767 skb_shinfo(tail)->gso_size = 0; in skb_segment()
4769 skb_shinfo(tail)->gso_segs = DIV_ROUND_UP(tail->len - doffset, gso_size); in skb_segment()
4900 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { in __skb_to_sgvec()
4905 end = start + skb_frag_size(&skb_shinfo(skb)->frags[i]); in __skb_to_sgvec()
4907 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in __skb_to_sgvec()
5030 if ((skb_cloned(skb) || skb_shinfo(skb)->nr_frags) && in skb_cow_data()
5053 skb_p = &skb_shinfo(skb)->frag_list; in skb_cow_data()
5069 if (skb_shinfo(skb1)->nr_frags || in skb_cow_data()
5078 skb_shinfo(skb1)->nr_frags || in skb_cow_data()
5238 serr->ee.ee_data = skb_shinfo(skb)->tskey; in __skb_complete_tx_timestamp()
5300 skb_shinfo(orig_skb)->tx_flags & SKBTX_IN_PROGRESS) in __skb_tstamp_tx()
5329 skb_shinfo(skb)->tx_flags |= skb_shinfo(orig_skb)->tx_flags & in __skb_tstamp_tx()
5331 skb_shinfo(skb)->tskey = skb_shinfo(orig_skb)->tskey; in __skb_tstamp_tx()
5784 to_shinfo = skb_shinfo(to); in skb_try_coalesce()
5785 from_shinfo = skb_shinfo(from); in skb_try_coalesce()
6389 skb_shinfo(skb), in pskb_carve_inside_header()
6391 frags[skb_shinfo(skb)->nr_frags])); in pskb_carve_inside_header()
6398 for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) in pskb_carve_inside_header()
6419 atomic_set(&skb_shinfo(skb)->dataref, 1); in pskb_carve_inside_header()
6489 const int nfrags = skb_shinfo(skb)->nr_frags; in pskb_carve_inside_nonlinear()
6501 skb_shinfo(skb), offsetof(struct skb_shared_info, frags[0])); in pskb_carve_inside_nonlinear()
6508 int fsize = skb_frag_size(&skb_shinfo(skb)->frags[i]); in pskb_carve_inside_nonlinear()
6511 shinfo->frags[k] = skb_shinfo(skb)->frags[i]; in pskb_carve_inside_nonlinear()
6538 kfree_skb_list(skb_shinfo(skb)->frag_list); in pskb_carve_inside_nonlinear()
6555 atomic_set(&skb_shinfo(skb)->dataref, 1); in pskb_carve_inside_nonlinear()
6910 space = frag_limit - skb_shinfo(skb)->nr_frags; in skb_splice_from_iter()