Lines Matching refs:frag
127 struct sk_buff *frag = *buf; in tipc_buf_append() local
134 if (!frag) in tipc_buf_append()
137 msg = buf_msg(frag); in tipc_buf_append()
139 frag->next = NULL; in tipc_buf_append()
140 skb_pull(frag, msg_hdr_sz(msg)); in tipc_buf_append()
146 if (skb_has_frag_list(frag) && __skb_linearize(frag)) in tipc_buf_append()
148 frag = skb_unshare(frag, GFP_ATOMIC); in tipc_buf_append()
149 if (unlikely(!frag)) in tipc_buf_append()
151 head = *headbuf = frag; in tipc_buf_append()
159 if (skb_try_coalesce(head, frag, &headstolen, &delta)) { in tipc_buf_append()
160 kfree_skb_partial(frag, headstolen); in tipc_buf_append()
164 skb_shinfo(head)->frag_list = frag; in tipc_buf_append()
166 tail->next = frag; in tipc_buf_append()
167 head->truesize += frag->truesize; in tipc_buf_append()
168 head->data_len += frag->len; in tipc_buf_append()
169 head->len += frag->len; in tipc_buf_append()
170 TIPC_SKB_CB(head)->tail = frag; in tipc_buf_append()
763 struct sk_buff *frag = NULL; in tipc_msg_reassemble() local
780 frag = skb_clone(skb, GFP_ATOMIC); in tipc_msg_reassemble()
781 if (!frag) in tipc_msg_reassemble()
783 frag->next = NULL; in tipc_msg_reassemble()
784 if (tipc_buf_append(&head, &frag)) in tipc_msg_reassemble()
789 __skb_queue_tail(rcvq, frag); in tipc_msg_reassemble()