Home
last modified time | relevance | path

Searched refs:frag (Results 1 – 25 of 30) sorted by relevance

12

/net/ieee802154/6lowpan/
Dtx.c91 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/
Diw_recv.c46 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 …]
Dib_recv.c158 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/
Dmsg.c123 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/
Dtso.c54 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()
Ddatagram.c378 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 …]
Dskbuff.c549 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/
Dchunk.c176 __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()
Dulpevent.c958 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/
Dip6_output.c572 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/
Dip_output.c583 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/
Daf_bluetooth.c379 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()
Damp.c242 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()
Dl2cap_core.c2146 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/
Dxfrm_ipcomp.c72 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/
Dirttp.c237 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/
Dflow.c279 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()
Dflow_netlink.c167 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()
Dflow.h83 u8 frag; /* One of OVS_FRAG_TYPE_*. */ member
Dconntrack.c351 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/
Dwext-compat.c324 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/
Drx.c1759 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/
Dddp.c952 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/
DKconfig158 tristate '"frag" Fragmentation header match support'
161 frag matching allows you to match packets based on the fragmentation
/net/ipv4/netfilter/
Dnf_log_ipv4.c195 ntohs(ich->un.frag.mtu)); in dump_ipv4_packet()

12