/net/ieee802154/6lowpan/ |
D | tx.c | 105 struct sk_buff *frag; in lowpan_alloc_frag() local 108 frag = alloc_skb(wdev->needed_headroom + wdev->needed_tailroom + size, in lowpan_alloc_frag() 111 if (likely(frag)) { in lowpan_alloc_frag() 112 frag->dev = wdev; in lowpan_alloc_frag() 113 frag->priority = skb->priority; in lowpan_alloc_frag() 114 skb_reserve(frag, wdev->needed_headroom); in lowpan_alloc_frag() 115 skb_reset_network_header(frag); in lowpan_alloc_frag() 116 *mac_cb(frag) = *mac_cb(skb); in lowpan_alloc_frag() 119 skb_put_data(frag, skb_mac_header(skb), skb->mac_len); in lowpan_alloc_frag() 121 rc = wpan_dev_hard_header(frag, wdev, in lowpan_alloc_frag() [all …]
|
D | reassembly.c | 46 struct inet_frag_queue *frag = from_timer(frag, t, timer); in lowpan_frag_expire() local 49 fq = container_of(frag, struct frag_queue, q); in lowpan_frag_expire()
|
/net/rds/ |
D | ib_recv.c | 159 struct rds_page_frag *frag; in rds_ib_recv_free_caches() local 178 list_for_each_entry_safe(frag, frag_tmp, &list, f_cache_entry) { in rds_ib_recv_free_caches() 179 list_del(&frag->f_cache_entry); in rds_ib_recv_free_caches() 180 WARN_ON(!list_empty(&frag->f_item)); in rds_ib_recv_free_caches() 181 kmem_cache_free(rds_ib_frag_slab, frag); in rds_ib_recv_free_caches() 193 struct rds_page_frag *frag) in rds_ib_frag_free() argument 195 rdsdebug("frag %p page %p\n", frag, sg_page(&frag->f_sg)); in rds_ib_frag_free() 197 rds_ib_recv_cache_put(&frag->f_cache_entry, &ic->i_cache_frags); in rds_ib_frag_free() 206 struct rds_page_frag *frag; in rds_ib_inc_free() local 213 list_for_each_entry_safe(frag, pos, &ibinc->ii_frags, f_item) { in rds_ib_inc_free() [all …]
|
/net/tipc/ |
D | msg.c | 125 struct sk_buff *frag = *buf; in tipc_buf_append() local 132 if (!frag) in tipc_buf_append() 135 msg = buf_msg(frag); in tipc_buf_append() 137 frag->next = NULL; in tipc_buf_append() 138 skb_pull(frag, msg_hdr_sz(msg)); in tipc_buf_append() 144 if (skb_has_frag_list(frag) && __skb_linearize(frag)) in tipc_buf_append() 146 frag = skb_unshare(frag, GFP_ATOMIC); in tipc_buf_append() 147 if (unlikely(!frag)) in tipc_buf_append() 149 head = *headbuf = frag; in tipc_buf_append() 157 if (skb_try_coalesce(head, frag, &headstolen, &delta)) { in tipc_buf_append() [all …]
|
/net/ipv6/ |
D | ip6_output.c | 687 iter->frag = skb_shinfo(skb)->frag_list; in ip6_fraglist_init() 718 struct sk_buff *frag = iter->frag; in ip6_fraglist_prepare() local 722 frag->ip_summed = CHECKSUM_NONE; in ip6_fraglist_prepare() 723 skb_reset_transport_header(frag); in ip6_fraglist_prepare() 724 fh = __skb_push(frag, sizeof(struct frag_hdr)); in ip6_fraglist_prepare() 725 __skb_push(frag, hlen); in ip6_fraglist_prepare() 726 skb_reset_network_header(frag); in ip6_fraglist_prepare() 727 memcpy(skb_network_header(frag), iter->tmp_hdr, hlen); in ip6_fraglist_prepare() 732 if (frag->next) in ip6_fraglist_prepare() 735 ipv6_hdr(frag)->payload_len = htons(frag->len - sizeof(struct ipv6hdr)); in ip6_fraglist_prepare() [all …]
|
D | netfilter.c | 184 if (iter.frag) in br_ip6_fragment() 189 if (err || !iter.frag) in br_ip6_fragment() 199 kfree_skb_list(iter.frag); in br_ip6_fragment()
|
D | reassembly.c | 75 struct inet_frag_queue *frag = from_timer(frag, t, timer); in ip6_frag_expire() local 78 fq = container_of(frag, struct frag_queue, q); in ip6_frag_expire()
|
/net/core/ |
D | tso.c | 55 skb_frag_t *frag = &skb_shinfo(skb)->frags[tso->next_frag_idx]; in tso_build_data() local 58 tso->size = skb_frag_size(frag); in tso_build_data() 59 tso->data = skb_frag_address(frag); in tso_build_data() 79 skb_frag_t *frag = &skb_shinfo(skb)->frags[tso->next_frag_idx]; in tso_start() local 82 tso->size = skb_frag_size(frag); in tso_start() 83 tso->data = skb_frag_address(frag); in tso_start()
|
D | datagram.c | 441 const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in __skb_datagram_iter() local 445 end = start + skb_frag_size(frag); in __skb_datagram_iter() 447 struct page *page = skb_frag_page(frag); in __skb_datagram_iter() 453 vaddr + skb_frag_off(frag) + offset - start, in __skb_datagram_iter() 573 const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_copy_datagram_from_iter() local 577 end = start + skb_frag_size(frag); in skb_copy_datagram_from_iter() 583 copied = copy_page_from_iter(skb_frag_page(frag), in skb_copy_datagram_from_iter() 584 skb_frag_off(frag) + offset - start, in skb_copy_datagram_from_iter() 626 int frag = skb_shinfo(skb)->nr_frags; in __zerocopy_sg_from_iter() local 635 if (frag == MAX_SKB_FRAGS) in __zerocopy_sg_from_iter() [all …]
|
D | skbuff.c | 566 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_coalesce_rx_frag() local 568 skb_frag_size_add(frag, size); in skb_coalesce_rx_frag() 794 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_dump() local 799 skb_frag_foreach_page(frag, skb_frag_off(frag), in skb_dump() 800 skb_frag_size(frag), p, p_off, p_len, in skb_dump() 1947 struct sk_buff *frag; in ___pskb_trim() local 1982 for (fragp = &skb_shinfo(skb)->frag_list; (frag = *fragp); in ___pskb_trim() 1983 fragp = &frag->next) { in ___pskb_trim() 1984 int end = offset + frag->len; in ___pskb_trim() 1986 if (skb_shared(frag)) { in ___pskb_trim() [all …]
|
/net/tls/ |
D | tls_device.c | 238 skb_frag_t *frag; in tls_append_frag() local 240 frag = &record->frags[record->num_frags - 1]; in tls_append_frag() 241 if (skb_frag_page(frag) == pfrag->page && in tls_append_frag() 242 skb_frag_off(frag) + skb_frag_size(frag) == pfrag->offset) { in tls_append_frag() 243 skb_frag_size_add(frag, size); in tls_append_frag() 245 ++frag; in tls_append_frag() 246 __skb_frag_set_page(frag, pfrag->page); in tls_append_frag() 247 skb_frag_off_set(frag, pfrag->offset); in tls_append_frag() 248 skb_frag_size_set(frag, size); in tls_append_frag() 265 skb_frag_t *frag; in tls_push_record() local [all …]
|
D | tls_device_fallback.c | 272 skb_frag_t *frag = &record->frags[i]; in fill_sg_in() local 274 __skb_frag_ref(frag); in fill_sg_in() 275 sg_set_page(sg_in + i, skb_frag_page(frag), in fill_sg_in() 276 skb_frag_size(frag), skb_frag_off(frag)); in fill_sg_in() 278 remaining -= skb_frag_size(frag); in fill_sg_in()
|
/net/ipv4/ |
D | ip_output.c | 604 iter->frag = skb_shinfo(skb)->frag_list; in ip_fraglist_init() 622 struct sk_buff *to = iter->frag; in ip_fraglist_ipcb_prepare() 635 struct sk_buff *frag; in ip_fraglist_prepare() local 637 frag = iter->frag; in ip_fraglist_prepare() 638 frag->ip_summed = CHECKSUM_NONE; in ip_fraglist_prepare() 639 skb_reset_transport_header(frag); in ip_fraglist_prepare() 640 __skb_push(frag, hlen); in ip_fraglist_prepare() 641 skb_reset_network_header(frag); in ip_fraglist_prepare() 642 memcpy(skb_network_header(frag), iph, hlen); in ip_fraglist_prepare() 643 iter->iph = ip_hdr(frag); in ip_fraglist_prepare() [all …]
|
/net/bridge/netfilter/ |
D | nf_conntrack_bridge.c | 60 struct sk_buff *frag; in nf_br_ip_fragment() local 69 skb_walk_frags(skb, frag) { in nf_br_ip_fragment() 70 if (frag->len > mtu || in nf_br_ip_fragment() 71 skb_headroom(frag) < hlen + ll_rs) in nf_br_ip_fragment() 74 if (skb_shared(frag)) in nf_br_ip_fragment() 81 if (iter.frag) in nf_br_ip_fragment() 86 if (err || !iter.frag) in nf_br_ip_fragment() 95 kfree_skb_list(iter.frag); in nf_br_ip_fragment()
|
/net/bluetooth/ |
D | af_bluetooth.c | 393 struct sk_buff *frag; in bt_sock_stream_recvmsg() local 398 skb_walk_frags(skb, frag) { in bt_sock_stream_recvmsg() 399 if (chunk <= frag->len) { in bt_sock_stream_recvmsg() 403 __skb_pull(frag, chunk); in bt_sock_stream_recvmsg() 405 } else if (frag->len) { in bt_sock_stream_recvmsg() 407 chunk -= frag->len; in bt_sock_stream_recvmsg() 408 skb->len -= frag->len; in bt_sock_stream_recvmsg() 409 skb->data_len -= frag->len; in bt_sock_stream_recvmsg() 410 __skb_pull(frag, frag->len); in bt_sock_stream_recvmsg()
|
/net/xfrm/ |
D | xfrm_ipcomp.c | 68 skb_frag_t *frag; in ipcomp_decompress() local 75 frag = skb_shinfo(skb)->frags + skb_shinfo(skb)->nr_frags; in ipcomp_decompress() 82 __skb_frag_set_page(frag, page); in ipcomp_decompress() 88 skb_frag_off_set(frag, 0); in ipcomp_decompress() 89 skb_frag_size_set(frag, len); in ipcomp_decompress() 90 memcpy(skb_frag_address(frag), scratch, len); in ipcomp_decompress()
|
/net/sctp/ |
D | chunk.c | 239 u8 frag = SCTP_DATA_MIDDLE_FRAG; in sctp_datamsg_from_user() local 243 frag |= SCTP_DATA_FIRST_FRAG; in sctp_datamsg_from_user() 253 frag |= SCTP_DATA_LAST_FRAG; in sctp_datamsg_from_user() 261 frag |= SCTP_DATA_SACK_IMM; in sctp_datamsg_from_user() 264 chunk = asoc->stream.si->make_datafrag(asoc, sinfo, len, frag, in sctp_datamsg_from_user()
|
D | ulpevent.c | 1023 struct sk_buff *skb, *frag; in sctp_ulpevent_receive_data() local 1039 skb_walk_frags(skb, frag) in sctp_ulpevent_receive_data() 1040 sctp_ulpevent_receive_data(sctp_skb2event(frag), asoc); in sctp_ulpevent_receive_data() 1048 struct sk_buff *skb, *frag; in sctp_ulpevent_release_data() local 1065 skb_walk_frags(skb, frag) { in sctp_ulpevent_release_data() 1070 sctp_ulpevent_release_frag_data(sctp_skb2event(frag)); in sctp_ulpevent_release_data() 1081 struct sk_buff *skb, *frag; in sctp_ulpevent_release_frag_data() local 1089 skb_walk_frags(skb, frag) { in sctp_ulpevent_release_frag_data() 1094 sctp_ulpevent_release_frag_data(sctp_skb2event(frag)); in sctp_ulpevent_release_frag_data()
|
D | associola.c | 1396 int frag = sctp_mtu_payload(sctp_sk(asoc->base.sk), asoc->pathmtu, in sctp_assoc_update_frag_point() local 1400 frag = min_t(int, frag, asoc->user_frag); in sctp_assoc_update_frag_point() 1402 frag = min_t(int, frag, SCTP_MAX_CHUNK_LEN - in sctp_assoc_update_frag_point() 1405 asoc->frag_point = SCTP_TRUNC4(frag); in sctp_assoc_update_frag_point()
|
/net/openvswitch/ |
D | flow.c | 267 key->ip.frag = OVS_FRAG_TYPE_LATER; in parse_ipv6hdr() 271 key->ip.frag = OVS_FRAG_TYPE_FIRST; in parse_ipv6hdr() 273 key->ip.frag = OVS_FRAG_TYPE_NONE; in parse_ipv6hdr() 562 key->ip.frag = OVS_FRAG_TYPE_LATER; in key_extract_l3l4() 568 key->ip.frag = OVS_FRAG_TYPE_FIRST; in key_extract_l3l4() 570 key->ip.frag = OVS_FRAG_TYPE_NONE; in key_extract_l3l4() 681 if (key->ip.frag == OVS_FRAG_TYPE_LATER) { in key_extract_l3l4() 686 key->ip.frag = OVS_FRAG_TYPE_FIRST; in key_extract_l3l4()
|
/net/sched/ |
D | act_ct.c | 117 static int tcf_ct_ipv4_is_fragment(struct sk_buff *skb, bool *frag) in tcf_ct_ipv4_is_fragment() argument 127 *frag = ip_is_fragment(ip_hdr(skb)); in tcf_ct_ipv4_is_fragment() 131 static int tcf_ct_ipv6_is_fragment(struct sk_buff *skb, bool *frag) in tcf_ct_ipv6_is_fragment() argument 147 *frag = flags & IP6_FH_F_FRAG; in tcf_ct_ipv6_is_fragment() 157 bool frag; in tcf_ct_handle_fragments() local 165 err = tcf_ct_ipv4_is_fragment(skb, &frag); in tcf_ct_handle_fragments() 167 err = tcf_ct_ipv6_is_fragment(skb, &frag); in tcf_ct_handle_fragments() 168 if (err || !frag) in tcf_ct_handle_fragments()
|
/net/wireless/ |
D | wext-compat.c | 291 struct iw_param *frag, char *extra) in cfg80211_wext_siwfrag() argument 298 if (frag->disabled || !frag->fixed) in cfg80211_wext_siwfrag() 300 else if (frag->value < 256) in cfg80211_wext_siwfrag() 304 wdev->wiphy->frag_threshold = frag->value & ~0x1; in cfg80211_wext_siwfrag() 317 struct iw_param *frag, char *extra) in cfg80211_wext_giwfrag() argument 321 frag->value = wdev->wiphy->frag_threshold; in cfg80211_wext_giwfrag() 322 frag->disabled = frag->value == (u32) -1; in cfg80211_wext_giwfrag() 323 frag->fixed = 1; in cfg80211_wext_giwfrag()
|
D | util.c | 636 const skb_frag_t *frag = &sh->frags[0]; in __ieee80211_amsdu_copy_frag() local 649 frag_page = skb_frag_page(frag); in __ieee80211_amsdu_copy_frag() 650 frag_ptr = skb_frag_address(frag); in __ieee80211_amsdu_copy_frag() 651 frag_size = skb_frag_size(frag); in __ieee80211_amsdu_copy_frag() 652 frag++; in __ieee80211_amsdu_copy_frag() 664 frag_len = skb_frag_size(frag); in __ieee80211_amsdu_copy_frag() 666 __frame_add_frag(frame, skb_frag_page(frag), in __ieee80211_amsdu_copy_frag() 667 skb_frag_address(frag), cur_len, frag_len); in __ieee80211_amsdu_copy_frag() 669 frag++; in __ieee80211_amsdu_copy_frag()
|
/net/bluetooth/rfcomm/ |
D | core.c | 556 static int rfcomm_dlc_send_frag(struct rfcomm_dlc *d, struct sk_buff *frag) in rfcomm_dlc_send_frag() argument 558 int len = frag->len; in rfcomm_dlc_send_frag() 565 rfcomm_make_uih(frag, d->addr); in rfcomm_dlc_send_frag() 566 __skb_queue_tail(&d->tx_queue, frag); in rfcomm_dlc_send_frag() 574 struct sk_buff *frag, *next; in rfcomm_dlc_send() local 580 frag = skb_shinfo(skb)->frag_list; in rfcomm_dlc_send() 587 if (len < 0 || !frag) in rfcomm_dlc_send() 590 for (; frag; frag = next) { in rfcomm_dlc_send() 593 next = frag->next; in rfcomm_dlc_send() 595 ret = rfcomm_dlc_send_frag(d, frag); in rfcomm_dlc_send() [all …]
|
/net/ipv6/netfilter/ |
D | nf_conntrack_reasm.c | 140 struct inet_frag_queue *frag = from_timer(frag, t, timer); in nf_ct_frag6_expire() local 143 fq = container_of(frag, struct frag_queue, q); in nf_ct_frag6_expire()
|