Lines Matching refs:gl
1694 const struct pkt_gl *gl, unsigned int offset) in copy_frags() argument
1699 __skb_fill_page_desc(skb, 0, gl->frags[0].page, in copy_frags()
1700 gl->frags[0].offset + offset, in copy_frags()
1701 gl->frags[0].size - offset); in copy_frags()
1702 skb_shinfo(skb)->nr_frags = gl->nfrags; in copy_frags()
1703 for (i = 1; i < gl->nfrags; i++) in copy_frags()
1704 __skb_fill_page_desc(skb, i, gl->frags[i].page, in copy_frags()
1705 gl->frags[i].offset, in copy_frags()
1706 gl->frags[i].size); in copy_frags()
1709 get_page(gl->frags[gl->nfrags - 1].page); in copy_frags()
1721 struct sk_buff *cxgb4_pktgl_to_skb(const struct pkt_gl *gl, in cxgb4_pktgl_to_skb() argument
1731 if (gl->tot_len <= RX_COPY_THRES) { in cxgb4_pktgl_to_skb()
1732 skb = dev_alloc_skb(gl->tot_len); in cxgb4_pktgl_to_skb()
1735 __skb_put(skb, gl->tot_len); in cxgb4_pktgl_to_skb()
1736 skb_copy_to_linear_data(skb, gl->va, gl->tot_len); in cxgb4_pktgl_to_skb()
1742 skb_copy_to_linear_data(skb, gl->va, pull_len); in cxgb4_pktgl_to_skb()
1744 copy_frags(skb, gl, pull_len); in cxgb4_pktgl_to_skb()
1745 skb->len = gl->tot_len; in cxgb4_pktgl_to_skb()
1760 static void t4_pktgl_free(const struct pkt_gl *gl) in t4_pktgl_free() argument
1765 for (p = gl->frags, n = gl->nfrags - 1; n--; p++) in t4_pktgl_free()
1774 const struct pkt_gl *gl) in handle_trace_pkt() argument
1778 skb = cxgb4_pktgl_to_skb(gl, RX_PULL_LEN, RX_PULL_LEN); in handle_trace_pkt()
1780 t4_pktgl_free(gl); in handle_trace_pkt()
1796 static void do_gro(struct sge_eth_rxq *rxq, const struct pkt_gl *gl, in do_gro() argument
1806 t4_pktgl_free(gl); in do_gro()
1811 copy_frags(skb, gl, s->pktshift); in do_gro()
1812 skb->len = gl->tot_len - s->pktshift; in do_gro()