Lines Matching refs:frags

92 			       struct mlx4_en_rx_alloc *frags,  in mlx4_en_alloc_frags()  argument
116 frags[i] = ring_alloc[i]; in mlx4_en_alloc_frags()
138 struct mlx4_en_rx_alloc *frags, in mlx4_en_free_frag() argument
142 u32 next_frag_end = frags[i].page_offset + 2 * frag_info->frag_stride; in mlx4_en_free_frag()
145 if (next_frag_end > frags[i].page_size) in mlx4_en_free_frag()
146 dma_unmap_page(priv->ddev, frags[i].dma, frags[i].page_size, in mlx4_en_free_frag()
149 if (frags[i].page) in mlx4_en_free_frag()
150 put_page(frags[i].page); in mlx4_en_free_frag()
241 struct mlx4_en_rx_alloc *frags = ring->rx_info + in mlx4_en_prepare_rx_desc() local
244 return mlx4_en_alloc_frags(priv, rx_desc, frags, ring->page_alloc, gfp); in mlx4_en_prepare_rx_desc()
262 struct mlx4_en_rx_alloc *frags; in mlx4_en_free_rx_desc() local
265 frags = ring->rx_info + (index << priv->log_rx_info); in mlx4_en_free_rx_desc()
268 mlx4_en_free_frag(priv, frags, nr); in mlx4_en_free_rx_desc()
546 struct mlx4_en_rx_alloc *frags, in mlx4_en_complete_rx_desc() argument
550 struct skb_frag_struct *skb_frags_rx = skb_shinfo(skb)->frags; in mlx4_en_complete_rx_desc()
560 if (!frags[nr].page) in mlx4_en_complete_rx_desc()
568 __skb_frag_set_page(&skb_frags_rx[nr], frags[nr].page); in mlx4_en_complete_rx_desc()
570 skb_frags_rx[nr].page_offset = frags[nr].page_offset; in mlx4_en_complete_rx_desc()
572 frags[nr].page = NULL; in mlx4_en_complete_rx_desc()
591 struct mlx4_en_rx_alloc *frags, in mlx4_en_rx_skb() argument
609 va = page_address(frags[0].page) + frags[0].page_offset; in mlx4_en_rx_skb()
623 used_frags = mlx4_en_complete_rx_desc(priv, rx_desc, frags, in mlx4_en_rx_skb()
637 skb_shinfo(skb)->frags[0].page_offset += pull_len; in mlx4_en_rx_skb()
640 skb_frag_size_sub(&skb_shinfo(skb)->frags[0], pull_len); in mlx4_en_rx_skb()
756 struct mlx4_en_rx_alloc *frags; in mlx4_en_process_rx_cq() local
784 frags = ring->rx_info + (index << priv->log_rx_info); in mlx4_en_process_rx_cq()
817 ethh = (struct ethhdr *)(page_address(frags[0].page) + in mlx4_en_process_rx_cq()
818 frags[0].page_offset); in mlx4_en_process_rx_cq()
891 rx_desc, frags, gro_skb, in mlx4_en_process_rx_cq()
897 void *va = skb_frag_address(skb_shinfo(gro_skb)->frags); in mlx4_en_process_rx_cq()
942 skb = mlx4_en_rx_skb(priv, rx_desc, frags, length); in mlx4_en_process_rx_cq()
993 mlx4_en_free_frag(priv, frags, nr); in mlx4_en_process_rx_cq()