Lines Matching refs:rq

251 vmxnet3_run_xdp(struct vmxnet3_rx_queue *rq, struct xdp_buff *xdp,
259 rq->stats.xdp_packets++;
267 err = xdp_do_redirect(rq->adapter->netdev, xdp, prog);
269 rq->stats.xdp_redirects++;
271 rq->stats.xdp_drops++;
272 page_pool_recycle_direct(rq->page_pool, page);
278 vmxnet3_xdp_xmit_back(rq->adapter, xdpf))) {
279 rq->stats.xdp_drops++;
280 page_pool_recycle_direct(rq->page_pool, page);
282 rq->stats.xdp_tx++;
286 bpf_warn_invalid_xdp_action(rq->adapter->netdev, prog, act);
289 trace_xdp_exception(rq->adapter->netdev, prog, act);
290 rq->stats.xdp_aborted++;
293 rq->stats.xdp_drops++;
297 page_pool_recycle_direct(rq->page_pool, page);
303 vmxnet3_build_skb(struct vmxnet3_rx_queue *rq, struct page *page,
310 page_pool_recycle_direct(rq->page_pool, page);
311 rq->stats.rx_buf_alloc_failure++;
326 struct vmxnet3_rx_queue *rq,
335 page = page_pool_alloc_pages(rq->page_pool, GFP_ATOMIC);
337 rq->stats.rx_buf_alloc_failure++;
341 xdp_init_buff(&xdp, PAGE_SIZE, &rq->xdp_rxq);
342 xdp_prepare_buff(&xdp, page_address(page), rq->page_pool->p.offset,
349 xdp_prog = rcu_dereference(rq->adapter->xdp_bpf_prog);
354 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog);
359 *skb_xdp_pass = vmxnet3_build_skb(rq, page, &xdp);
369 struct vmxnet3_rx_queue *rq,
385 rq->page_pool->p.offset, rbi->len,
386 page_pool_get_dma_dir(rq->page_pool));
388 xdp_init_buff(&xdp, PAGE_SIZE, &rq->xdp_rxq);
389 xdp_prepare_buff(&xdp, page_address(page), rq->page_pool->p.offset,
393 xdp_prog = rcu_dereference(rq->adapter->xdp_bpf_prog);
398 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog);
402 *skb_xdp_pass = vmxnet3_build_skb(rq, page, &xdp);
407 new_data = vmxnet3_pp_get_buff(rq->page_pool, &new_dma_addr,
410 rq->stats.rx_buf_alloc_failure++;