Lines Matching full:xdp
48 NL_SET_ERR_MSG_FMT_MOD(extack, "MTU %u too large for XDP", in vmxnet3_xdp_set()
54 NL_SET_ERR_MSG_MOD(extack, "LRO is not supported with XDP"); in vmxnet3_xdp_set()
86 "failed to re-create rx queues for XDP."); in vmxnet3_xdp_set()
92 "failed to activate device for XDP."); in vmxnet3_xdp_set()
100 /* This is the main xdp call used by kernel to set/unset eBPF program. */
148 } else { /* XDP buffer from page pool */ in vmxnet3_xdp_xmit_frame()
251 vmxnet3_run_xdp(struct vmxnet3_rx_queue *rq, struct xdp_buff *xdp, in vmxnet3_run_xdp() argument
260 act = bpf_prog_run_xdp(prog, xdp); in vmxnet3_run_xdp()
261 page = virt_to_page(xdp->data_hard_start); in vmxnet3_run_xdp()
267 err = xdp_do_redirect(rq->adapter->netdev, xdp, prog); in vmxnet3_run_xdp()
276 xdpf = xdp_convert_buff_to_frame(xdp); in vmxnet3_run_xdp()
304 const struct xdp_buff *xdp) in vmxnet3_build_skb() argument
316 skb_reserve(skb, xdp->data - xdp->data_hard_start); in vmxnet3_build_skb()
317 skb_put(skb, xdp->data_end - xdp->data); in vmxnet3_build_skb()
331 struct xdp_buff xdp; in vmxnet3_process_xdp_small() local
341 xdp_init_buff(&xdp, PAGE_SIZE, &rq->xdp_rxq); in vmxnet3_process_xdp_small()
342 xdp_prepare_buff(&xdp, page_address(page), rq->page_pool->p.offset, in vmxnet3_process_xdp_small()
344 xdp_buff_clear_frags_flag(&xdp); in vmxnet3_process_xdp_small()
347 memcpy(xdp.data, data, len); in vmxnet3_process_xdp_small()
354 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog); in vmxnet3_process_xdp_small()
359 *skb_xdp_pass = vmxnet3_build_skb(rq, page, &xdp); in vmxnet3_process_xdp_small()
377 struct xdp_buff xdp; in vmxnet3_process_xdp() local
388 xdp_init_buff(&xdp, rbi->len, &rq->xdp_rxq); in vmxnet3_process_xdp()
389 xdp_prepare_buff(&xdp, page_address(page), rq->page_pool->p.offset, in vmxnet3_process_xdp()
391 xdp_buff_clear_frags_flag(&xdp); in vmxnet3_process_xdp()
398 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog); in vmxnet3_process_xdp()
402 *skb_xdp_pass = vmxnet3_build_skb(rq, page, &xdp); in vmxnet3_process_xdp()