/net/ieee802154/6lowpan/ |
D | tx.c | 91 struct sk_buff *frag; in lowpan_alloc_frag() local 94 frag = alloc_skb(wdev->needed_headroom + wdev->needed_tailroom + size, in lowpan_alloc_frag() 97 if (likely(frag)) { in lowpan_alloc_frag() 98 frag->dev = wdev; in lowpan_alloc_frag() 99 frag->priority = skb->priority; in lowpan_alloc_frag() 100 skb_reserve(frag, wdev->needed_headroom); in lowpan_alloc_frag() 101 skb_reset_network_header(frag); in lowpan_alloc_frag() 102 *mac_cb(frag) = *mac_cb(skb); in lowpan_alloc_frag() 105 memcpy(skb_put(frag, skb->mac_len), in lowpan_alloc_frag() 108 rc = wpan_dev_hard_header(frag, wdev, in lowpan_alloc_frag() [all …]
|
/net/rds/ |
D | iw_recv.c | 46 static void rds_iw_frag_drop_page(struct rds_page_frag *frag) in rds_iw_frag_drop_page() argument 48 rdsdebug("frag %p page %p\n", frag, frag->f_page); in rds_iw_frag_drop_page() 49 __free_page(frag->f_page); in rds_iw_frag_drop_page() 50 frag->f_page = NULL; in rds_iw_frag_drop_page() 53 static void rds_iw_frag_free(struct rds_page_frag *frag) in rds_iw_frag_free() argument 55 rdsdebug("frag %p page %p\n", frag, frag->f_page); in rds_iw_frag_free() 56 BUG_ON(frag->f_page); in rds_iw_frag_free() 57 kmem_cache_free(rds_iw_frag_slab, frag); in rds_iw_frag_free() 72 struct rds_page_frag *frag = recv->r_frag; in rds_iw_recv_unmap_page() local 74 rdsdebug("recv %p frag %p page %p\n", recv, frag, frag->f_page); in rds_iw_recv_unmap_page() [all …]
|
D | ib_recv.c | 158 struct rds_page_frag *frag; in rds_ib_recv_free_caches() local 176 list_for_each_entry_safe(frag, frag_tmp, &list, f_cache_entry) { in rds_ib_recv_free_caches() 177 list_del(&frag->f_cache_entry); in rds_ib_recv_free_caches() 178 WARN_ON(!list_empty(&frag->f_item)); in rds_ib_recv_free_caches() 179 kmem_cache_free(rds_ib_frag_slab, frag); in rds_ib_recv_free_caches() 191 struct rds_page_frag *frag) in rds_ib_frag_free() argument 193 rdsdebug("frag %p page %p\n", frag, sg_page(&frag->f_sg)); in rds_ib_frag_free() 195 rds_ib_recv_cache_put(&frag->f_cache_entry, &ic->i_cache_frags); in rds_ib_frag_free() 202 struct rds_page_frag *frag; in rds_ib_inc_free() local 209 list_for_each_entry_safe(frag, pos, &ibinc->ii_frags, f_item) { in rds_ib_inc_free() [all …]
|
/net/tipc/ |
D | msg.c | 123 struct sk_buff *frag = *buf; in tipc_buf_append() local 130 if (!frag) in tipc_buf_append() 133 msg = buf_msg(frag); in tipc_buf_append() 135 frag->next = NULL; in tipc_buf_append() 136 skb_pull(frag, msg_hdr_sz(msg)); in tipc_buf_append() 142 if (skb_has_frag_list(frag) && __skb_linearize(frag)) in tipc_buf_append() 144 frag = skb_unshare(frag, GFP_ATOMIC); in tipc_buf_append() 145 if (unlikely(!frag)) in tipc_buf_append() 147 head = *headbuf = frag; in tipc_buf_append() 155 if (skb_try_coalesce(head, frag, &headstolen, &delta)) { in tipc_buf_append() [all …]
|
/net/core/ |
D | tso.c | 54 skb_frag_t *frag = &skb_shinfo(skb)->frags[tso->next_frag_idx]; in tso_build_data() local 57 tso->size = frag->size; in tso_build_data() 58 tso->data = page_address(frag->page.p) + frag->page_offset; in tso_build_data() 78 skb_frag_t *frag = &skb_shinfo(skb)->frags[tso->next_frag_idx]; in tso_start() local 81 tso->size = frag->size; in tso_start() 82 tso->data = page_address(frag->page.p) + frag->page_offset; in tso_start()
|
D | datagram.c | 378 const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_copy_datagram_iter() local 382 end = start + skb_frag_size(frag); in skb_copy_datagram_iter() 386 if (copy_page_to_iter(skb_frag_page(frag), in skb_copy_datagram_iter() 387 frag->page_offset + offset - in skb_copy_datagram_iter() 465 const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_copy_datagram_from_iter() local 469 end = start + skb_frag_size(frag); in skb_copy_datagram_from_iter() 475 copied = copy_page_from_iter(skb_frag_page(frag), in skb_copy_datagram_from_iter() 476 frag->page_offset + offset - start, in skb_copy_datagram_from_iter() 529 int frag = 0; in zerocopy_sg_from_iter() local 542 if (frag == MAX_SKB_FRAGS) in zerocopy_sg_from_iter() [all …]
|
D | skbuff.c | 549 skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in skb_coalesce_rx_frag() local 551 skb_frag_size_add(frag, size); in skb_coalesce_rx_frag() 1438 struct sk_buff *frag; in ___pskb_trim() local 1473 for (fragp = &skb_shinfo(skb)->frag_list; (frag = *fragp); in ___pskb_trim() 1474 fragp = &frag->next) { in ___pskb_trim() 1475 int end = offset + frag->len; in ___pskb_trim() 1477 if (skb_shared(frag)) { in ___pskb_trim() 1480 nfrag = skb_clone(frag, GFP_ATOMIC); in ___pskb_trim() 1484 nfrag->next = frag->next; in ___pskb_trim() 1485 consume_skb(frag); in ___pskb_trim() [all …]
|
/net/sctp/ |
D | chunk.c | 176 __u8 frag; in sctp_datamsg_from_user() local 259 frag = SCTP_DATA_MIDDLE_FRAG; in sctp_datamsg_from_user() 262 frag |= SCTP_DATA_FIRST_FRAG; in sctp_datamsg_from_user() 265 frag |= SCTP_DATA_LAST_FRAG; in sctp_datamsg_from_user() 273 frag |= SCTP_DATA_SACK_IMM; in sctp_datamsg_from_user() 276 chunk = sctp_make_datafrag_empty(asoc, sinfo, len, frag, 0); in sctp_datamsg_from_user() 304 frag = SCTP_DATA_NOT_FRAG; in sctp_datamsg_from_user() 306 frag = SCTP_DATA_LAST_FRAG; in sctp_datamsg_from_user() 310 frag |= SCTP_DATA_SACK_IMM; in sctp_datamsg_from_user() 312 chunk = sctp_make_datafrag_empty(asoc, sinfo, over, frag, 0); in sctp_datamsg_from_user()
|
D | ulpevent.c | 958 struct sk_buff *skb, *frag; in sctp_ulpevent_receive_data() local 974 skb_walk_frags(skb, frag) in sctp_ulpevent_receive_data() 975 sctp_ulpevent_receive_data(sctp_skb2event(frag), asoc); in sctp_ulpevent_receive_data() 983 struct sk_buff *skb, *frag; in sctp_ulpevent_release_data() local 1000 skb_walk_frags(skb, frag) { in sctp_ulpevent_release_data() 1005 sctp_ulpevent_release_frag_data(sctp_skb2event(frag)); in sctp_ulpevent_release_data() 1015 struct sk_buff *skb, *frag; in sctp_ulpevent_release_frag_data() local 1023 skb_walk_frags(skb, frag) { in sctp_ulpevent_release_frag_data() 1028 sctp_ulpevent_release_frag_data(sctp_skb2event(frag)); in sctp_ulpevent_release_frag_data()
|
/net/ipv6/ |
D | ip6_output.c | 572 struct sk_buff *frag; in ip6_fragment() local 636 skb_walk_frags(skb, frag) { in ip6_fragment() 638 if (frag->len > mtu || in ip6_fragment() 639 ((frag->len & 7) && frag->next) || in ip6_fragment() 640 skb_headroom(frag) < (hlen + hroom + sizeof(struct frag_hdr))) in ip6_fragment() 644 if (skb_shared(frag)) in ip6_fragment() 647 BUG_ON(frag->sk); in ip6_fragment() 649 frag->sk = skb->sk; in ip6_fragment() 650 frag->destructor = sock_wfree; in ip6_fragment() 652 skb->truesize -= frag->truesize; in ip6_fragment() [all …]
|
/net/ipv4/ |
D | ip_output.c | 583 struct sk_buff *frag, *frag2; in ip_do_fragment() local 592 skb_walk_frags(skb, frag) { in ip_do_fragment() 594 if (frag->len > mtu || in ip_do_fragment() 595 ((frag->len & 7) && frag->next) || in ip_do_fragment() 596 skb_headroom(frag) < hlen) in ip_do_fragment() 600 if (skb_shared(frag)) in ip_do_fragment() 603 BUG_ON(frag->sk); in ip_do_fragment() 605 frag->sk = skb->sk; in ip_do_fragment() 606 frag->destructor = sock_wfree; in ip_do_fragment() 608 skb->truesize -= frag->truesize; in ip_do_fragment() [all …]
|
/net/bluetooth/ |
D | af_bluetooth.c | 379 struct sk_buff *frag; in bt_sock_stream_recvmsg() local 384 skb_walk_frags(skb, frag) { in bt_sock_stream_recvmsg() 385 if (chunk <= frag->len) { in bt_sock_stream_recvmsg() 389 __skb_pull(frag, chunk); in bt_sock_stream_recvmsg() 391 } else if (frag->len) { in bt_sock_stream_recvmsg() 393 chunk -= frag->len; in bt_sock_stream_recvmsg() 394 skb->len -= frag->len; in bt_sock_stream_recvmsg() 395 skb->data_len -= frag->len; in bt_sock_stream_recvmsg() 396 __skb_pull(frag, frag->len); in bt_sock_stream_recvmsg()
|
D | amp.c | 242 memcpy(assoc->data + assoc->offset, rp->frag, frag_len); in read_local_amp_assoc_complete() 251 memcpy(assoc->data + assoc->offset, rp->frag, rem_len); in read_local_amp_assoc_complete() 377 memcpy(cp->frag, ctrl->assoc, frag_len); in amp_write_rem_assoc_frag()
|
D | l2cap_core.c | 2146 struct sk_buff **frag; in l2cap_skbuff_fromiovec() local 2156 frag = &skb_shinfo(skb)->frag_list; in l2cap_skbuff_fromiovec() 2167 *frag = tmp; in l2cap_skbuff_fromiovec() 2169 if (copy_from_iter(skb_put(*frag, count), count, in l2cap_skbuff_fromiovec() 2176 skb->len += (*frag)->len; in l2cap_skbuff_fromiovec() 2177 skb->data_len += (*frag)->len; in l2cap_skbuff_fromiovec() 2179 frag = &(*frag)->next; in l2cap_skbuff_fromiovec() 2902 struct sk_buff *skb, **frag; in l2cap_build_cmd() local 2942 frag = &skb_shinfo(skb)->frag_list; in l2cap_build_cmd() 2946 *frag = bt_skb_alloc(count, GFP_KERNEL); in l2cap_build_cmd() [all …]
|
/net/xfrm/ |
D | xfrm_ipcomp.c | 72 skb_frag_t *frag; in ipcomp_decompress() local 79 frag = skb_shinfo(skb)->frags + skb_shinfo(skb)->nr_frags; in ipcomp_decompress() 86 __skb_frag_set_page(frag, page); in ipcomp_decompress() 92 frag->page_offset = 0; in ipcomp_decompress() 93 skb_frag_size_set(frag, len); in ipcomp_decompress() 94 memcpy(skb_frag_address(frag), scratch, len); in ipcomp_decompress()
|
/net/irda/ |
D | irttp.c | 237 struct sk_buff *skb, *frag; in irttp_reassemble_skb() local 260 while ((frag = skb_dequeue(&self->rx_fragments)) != NULL) { in irttp_reassemble_skb() 261 skb_copy_to_linear_data_offset(skb, n, frag->data, frag->len); in irttp_reassemble_skb() 262 n += frag->len; in irttp_reassemble_skb() 264 dev_kfree_skb(frag); in irttp_reassemble_skb() 294 struct sk_buff *frag; in irttp_fragment_skb() local 308 frag = alloc_skb(self->max_seg_size+self->max_header_size, in irttp_fragment_skb() 310 if (!frag) in irttp_fragment_skb() 313 skb_reserve(frag, self->max_header_size); in irttp_fragment_skb() 316 skb_copy_from_linear_data(skb, skb_put(frag, self->max_seg_size), in irttp_fragment_skb() [all …]
|
/net/openvswitch/ |
D | flow.c | 279 key->ip.frag = OVS_FRAG_TYPE_LATER; in parse_ipv6hdr() 281 key->ip.frag = OVS_FRAG_TYPE_FIRST; in parse_ipv6hdr() 283 key->ip.frag = OVS_FRAG_TYPE_NONE; in parse_ipv6hdr() 524 key->ip.frag = OVS_FRAG_TYPE_LATER; in key_extract() 529 key->ip.frag = OVS_FRAG_TYPE_FIRST; in key_extract() 531 key->ip.frag = OVS_FRAG_TYPE_NONE; in key_extract() 647 if (key->ip.frag == OVS_FRAG_TYPE_LATER) in key_extract() 650 key->ip.frag = OVS_FRAG_TYPE_FIRST; in key_extract()
|
D | flow_netlink.c | 167 if (match->key->ip.frag != OVS_FRAG_TYPE_LATER) { in match_validate() 202 if (match->key->ip.frag != OVS_FRAG_TYPE_LATER) { in match_validate() 975 SW_FLOW_KEY_PUT(match, ip.frag, in ovs_key_from_nlattrs() 1008 SW_FLOW_KEY_PUT(match, ip.frag, in ovs_key_from_nlattrs() 1504 ipv4_key->ipv4_frag = output->ip.frag; in __ovs_nla_put_key() 1520 ipv6_key->ipv6_frag = output->ip.frag; in __ovs_nla_put_key() 1547 swkey->ip.frag != OVS_FRAG_TYPE_LATER) { in __ovs_nla_put_key() 2066 if (ipv4_key->ipv4_frag != flow_key->ip.frag) in validate_set() 2091 if (ipv6_key->ipv6_frag != flow_key->ip.frag) in validate_set()
|
D | flow.h | 83 u8 frag; /* One of OVS_FRAG_TYPE_*. */ member
|
D | conntrack.c | 351 key->ip.frag = OVS_FRAG_TYPE_NONE; in handle_fragments() 534 if (key->ip.frag != OVS_FRAG_TYPE_NONE) { in ovs_ct_execute()
|
/net/wireless/ |
D | wext-compat.c | 324 struct iw_param *frag, char *extra) in cfg80211_wext_siwfrag() argument 331 if (frag->disabled || !frag->fixed) in cfg80211_wext_siwfrag() 333 else if (frag->value < 256) in cfg80211_wext_siwfrag() 337 wdev->wiphy->frag_threshold = frag->value & ~0x1; in cfg80211_wext_siwfrag() 350 struct iw_param *frag, char *extra) in cfg80211_wext_giwfrag() argument 354 frag->value = wdev->wiphy->frag_threshold; in cfg80211_wext_giwfrag() 355 frag->disabled = frag->value == (u32) -1; in cfg80211_wext_giwfrag() 356 frag->fixed = 1; in cfg80211_wext_giwfrag()
|
/net/mac80211/ |
D | rx.c | 1759 unsigned int frag, unsigned int seq, int rx_queue, in ieee80211_reassemble_add() argument 1775 entry->last_frag = frag; in ieee80211_reassemble_add() 1784 unsigned int frag, unsigned int seq, in ieee80211_reassemble_find() argument 1801 entry->last_frag + 1 != frag) in ieee80211_reassemble_find() 1842 unsigned int frag, seq; in ieee80211_rx_h_defragment() local 1854 frag = sc & IEEE80211_SCTL_FRAG; in ieee80211_rx_h_defragment() 1859 if (likely(!ieee80211_has_morefrags(fc) && frag == 0)) in ieee80211_rx_h_defragment() 1878 if (frag == 0) { in ieee80211_rx_h_defragment() 1880 entry = ieee80211_reassemble_add(cache, frag, seq, in ieee80211_rx_h_defragment() 1914 entry = ieee80211_reassemble_find(cache, frag, seq, in ieee80211_rx_h_defragment() [all …]
|
/net/appletalk/ |
D | ddp.c | 952 const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; in atalk_sum_skb() local 955 end = start + skb_frag_size(frag); in atalk_sum_skb() 961 vaddr = kmap_atomic(skb_frag_page(frag)); in atalk_sum_skb() 962 sum = atalk_sum_partial(vaddr + frag->page_offset + in atalk_sum_skb()
|
/net/ipv6/netfilter/ |
D | Kconfig | 158 tristate '"frag" Fragmentation header match support' 161 frag matching allows you to match packets based on the fragmentation
|
/net/ipv4/netfilter/ |
D | nf_log_ipv4.c | 195 ntohs(ich->un.frag.mtu)); in dump_ipv4_packet()
|