Lines Matching refs:frag
133 struct sk_buff *frag = *buf; in tipc_buf_append() local
140 if (!frag) in tipc_buf_append()
143 msg = buf_msg(frag); in tipc_buf_append()
145 frag->next = NULL; in tipc_buf_append()
146 skb_pull(frag, msg_hdr_sz(msg)); in tipc_buf_append()
152 if (skb_has_frag_list(frag) && __skb_linearize(frag)) in tipc_buf_append()
154 frag = skb_unshare(frag, GFP_ATOMIC); in tipc_buf_append()
155 if (unlikely(!frag)) in tipc_buf_append()
157 head = *headbuf = frag; in tipc_buf_append()
165 if (skb_try_coalesce(head, frag, &headstolen, &delta)) { in tipc_buf_append()
166 kfree_skb_partial(frag, headstolen); in tipc_buf_append()
170 skb_shinfo(head)->frag_list = frag; in tipc_buf_append()
172 tail->next = frag; in tipc_buf_append()
173 head->truesize += frag->truesize; in tipc_buf_append()
174 head->data_len += frag->len; in tipc_buf_append()
175 head->len += frag->len; in tipc_buf_append()
176 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()