Lines Matching refs:rx_buffer

1980 static bool i40e_can_reuse_rx_page(struct i40e_rx_buffer *rx_buffer,  in i40e_can_reuse_rx_page()  argument
1984 unsigned int pagecnt_bias = rx_buffer->pagecnt_bias; in i40e_can_reuse_rx_page()
1985 struct page *page = rx_buffer->page; in i40e_can_reuse_rx_page()
2002 if (rx_buffer->page_offset > I40E_LAST_OFFSET) { in i40e_can_reuse_rx_page()
2014 rx_buffer->pagecnt_bias = USHRT_MAX; in i40e_can_reuse_rx_page()
2033 struct i40e_rx_buffer *rx_buffer, in i40e_add_rx_frag() argument
2043 skb_add_rx_frag(skb, skb_shinfo(skb)->nr_frags, rx_buffer->page, in i40e_add_rx_frag()
2044 rx_buffer->page_offset, size, truesize); in i40e_add_rx_frag()
2048 rx_buffer->page_offset ^= truesize; in i40e_add_rx_frag()
2050 rx_buffer->page_offset += truesize; in i40e_add_rx_frag()
2067 struct i40e_rx_buffer *rx_buffer; in i40e_get_rx_buffer() local
2069 rx_buffer = i40e_rx_bi(rx_ring, rx_ring->next_to_clean); in i40e_get_rx_buffer()
2072 page_count(rx_buffer->page); in i40e_get_rx_buffer()
2076 prefetch_page_address(rx_buffer->page); in i40e_get_rx_buffer()
2080 rx_buffer->dma, in i40e_get_rx_buffer()
2081 rx_buffer->page_offset, in i40e_get_rx_buffer()
2086 rx_buffer->pagecnt_bias--; in i40e_get_rx_buffer()
2088 return rx_buffer; in i40e_get_rx_buffer()
2102 struct i40e_rx_buffer *rx_buffer, in i40e_construct_skb() argument
2153 skb_add_rx_frag(skb, 0, rx_buffer->page, in i40e_construct_skb()
2154 rx_buffer->page_offset + headlen, in i40e_construct_skb()
2159 rx_buffer->page_offset ^= truesize; in i40e_construct_skb()
2161 rx_buffer->page_offset += truesize; in i40e_construct_skb()
2165 rx_buffer->pagecnt_bias++; in i40e_construct_skb()
2181 struct i40e_rx_buffer *rx_buffer, in i40e_build_skb() argument
2214 rx_buffer->page_offset ^= truesize; in i40e_build_skb()
2216 rx_buffer->page_offset += truesize; in i40e_build_skb()
2232 struct i40e_rx_buffer *rx_buffer, in i40e_put_rx_buffer() argument
2235 if (i40e_can_reuse_rx_page(rx_buffer, &rx_ring->rx_stats, rx_buffer_pgcnt)) { in i40e_put_rx_buffer()
2237 i40e_reuse_rx_page(rx_ring, rx_buffer); in i40e_put_rx_buffer()
2240 dma_unmap_page_attrs(rx_ring->dev, rx_buffer->dma, in i40e_put_rx_buffer()
2243 __page_frag_cache_drain(rx_buffer->page, in i40e_put_rx_buffer()
2244 rx_buffer->pagecnt_bias); in i40e_put_rx_buffer()
2246 rx_buffer->page = NULL; in i40e_put_rx_buffer()
2339 struct i40e_rx_buffer *rx_buffer, in i40e_rx_buffer_flip() argument
2345 rx_buffer->page_offset ^= truesize; in i40e_rx_buffer_flip()
2347 rx_buffer->page_offset += truesize; in i40e_rx_buffer_flip()
2453 struct i40e_rx_buffer *rx_buffer; in i40e_clean_rx_irq() local
2485 rx_buffer = i40e_rx_bi(rx_ring, rx_ring->next_to_clean); in i40e_clean_rx_irq()
2487 i40e_reuse_rx_page(rx_ring, rx_buffer); in i40e_clean_rx_irq()
2498 rx_buffer = i40e_get_rx_buffer(rx_ring, size, &rx_buffer_pgcnt); in i40e_clean_rx_irq()
2504 hard_start = page_address(rx_buffer->page) + in i40e_clean_rx_irq()
2505 rx_buffer->page_offset - offset; in i40e_clean_rx_irq()
2518 i40e_rx_buffer_flip(rx_ring, rx_buffer, size); in i40e_clean_rx_irq()
2520 rx_buffer->pagecnt_bias++; in i40e_clean_rx_irq()
2525 i40e_add_rx_frag(rx_ring, rx_buffer, skb, size); in i40e_clean_rx_irq()
2527 skb = i40e_build_skb(rx_ring, rx_buffer, &xdp); in i40e_clean_rx_irq()
2529 skb = i40e_construct_skb(rx_ring, rx_buffer, &xdp); in i40e_clean_rx_irq()
2535 rx_buffer->pagecnt_bias++; in i40e_clean_rx_irq()
2539 i40e_put_rx_buffer(rx_ring, rx_buffer, rx_buffer_pgcnt); in i40e_clean_rx_irq()