Lines Matching refs:xdp
383 struct xdp_buff **xdp; in ice_alloc_rx_bufs_zc() local
391 xdp = &rx_ring->xdp_buf[ntu]; in ice_alloc_rx_bufs_zc()
394 *xdp = xsk_buff_alloc(rx_ring->xsk_pool); in ice_alloc_rx_bufs_zc()
395 if (!*xdp) { in ice_alloc_rx_bufs_zc()
400 dma = xsk_buff_xdp_get_dma(*xdp); in ice_alloc_rx_bufs_zc()
405 xdp++; in ice_alloc_rx_bufs_zc()
410 xdp = rx_ring->xdp_buf; in ice_alloc_rx_bufs_zc()
449 struct xdp_buff *xdp = *xdp_arr; in ice_construct_skb_zc() local
450 unsigned int metasize = xdp->data - xdp->data_meta; in ice_construct_skb_zc()
451 unsigned int datasize = xdp->data_end - xdp->data; in ice_construct_skb_zc()
452 unsigned int datasize_hard = xdp->data_end - xdp->data_hard_start; in ice_construct_skb_zc()
460 skb_reserve(skb, xdp->data - xdp->data_hard_start); in ice_construct_skb_zc()
461 memcpy(__skb_put(skb, datasize), xdp->data, datasize); in ice_construct_skb_zc()
465 xsk_buff_free(xdp); in ice_construct_skb_zc()
478 ice_run_xdp_zc(struct ice_ring *rx_ring, struct xdp_buff *xdp) in ice_run_xdp_zc() argument
490 act = bpf_prog_run_xdp(xdp_prog, xdp); in ice_run_xdp_zc()
493 err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog); in ice_run_xdp_zc()
504 result = ice_xmit_xdp_buff(xdp, xdp_ring); in ice_run_xdp_zc()
540 struct xdp_buff **xdp; in ice_clean_rx_irq_zc() local
563 xdp = &rx_ring->xdp_buf[rx_ring->next_to_clean]; in ice_clean_rx_irq_zc()
564 (*xdp)->data_end = (*xdp)->data + size; in ice_clean_rx_irq_zc()
565 xsk_buff_dma_sync_for_cpu(*xdp, rx_ring->xsk_pool); in ice_clean_rx_irq_zc()
567 xdp_res = ice_run_xdp_zc(rx_ring, *xdp); in ice_clean_rx_irq_zc()
572 xsk_buff_free(*xdp); in ice_clean_rx_irq_zc()
574 *xdp = NULL; in ice_clean_rx_irq_zc()
584 skb = ice_construct_skb_zc(rx_ring, xdp); in ice_clean_rx_irq_zc()
834 struct xdp_buff **xdp = &rx_ring->xdp_buf[ntc]; in ice_xsk_clean_rx_ring() local
836 xsk_buff_free(*xdp); in ice_xsk_clean_rx_ring()
837 *xdp = NULL; in ice_xsk_clean_rx_ring()