Lines Matching full:xsk
18 * libeth_xsk_tx_queue_head - internal helper for queueing XSk ``XDP_TX`` head
20 * @xdp: XSk buffer with the head to queue
28 .xsk = xdp, in libeth_xsk_tx_queue_head()
42 * libeth_xsk_tx_queue_frag - internal helper for queueing XSk ``XDP_TX`` frag
44 * @frag: XSk frag to queue
50 .xsk = frag, in libeth_xsk_tx_queue_frag()
56 * libeth_xsk_tx_queue_bulk - internal helper for queueing XSk ``XDP_TX`` frame
58 * @xdp: XSk buffer to queue
102 * libeth_xsk_tx_fill_buf - internal helper to fill XSk ``XDP_TX`` &libeth_sqe
115 struct libeth_xdp_buff *xdp = frm.xsk; in libeth_xsk_tx_fill_buf()
125 sqe->xsk = xdp; in libeth_xsk_tx_fill_buf()
140 * libeth_xsk_tx_flush_bulk - wrapper to define flush of XSk ``XDP_TX`` bulk
146 * Use via LIBETH_XSK_DEFINE_FLUSH_TX() to define an XSk ``XDP_TX`` driver
153 /* XSk TMO */
156 * libeth_xsktmo_req_csum - XSk Tx metadata op to request checksum offload
179 * __libeth_xsk_xmit_fill_buf_md - internal helper to prepare XSk xmit w/meta
180 * @xdesc: &xdp_desc from the XSk buffer pool
182 * @priv: XSk Tx metadata ops
213 /* XSk xmit implementation */
216 * __libeth_xsk_xmit_fill_buf - internal helper to prepare XSk xmit w/o meta
217 * @xdesc: &xdp_desc from the XSk buffer pool
234 * libeth_xsk_xmit_fill_buf - internal helper to prepare an XSk xmit
235 * @frm: &xdp_desc from the XSk buffer pool
238 * @priv: XSk Tx metadata ops
265 * libeth_xsk_xmit_do_bulk - send XSk xmit frames
266 * @pool: XSk buffer pool containing the frames to send
269 * @tmo: optional XSk Tx metadata ops
274 * Implements generic XSk xmit. Always turns on XSk Tx wakeup as it's assumed
317 * libeth_xsk_tx_init_bulk - initialize XDP Tx bulk for an XSk Rx NAPI poll
324 * Should be called on an onstack XDP Tx bulk before the XSk NAPI polling loop.
337 * libeth_xsk_process_buff - attach XSk Rx buffer to &libeth_xdp_buff
338 * @head: head XSk buffer to attach the XSk buffer to (or %NULL)
339 * @xdp: XSk buffer to process
342 * If @head == %NULL, treats the XSk buffer as head and initializes
347 * Return: head XSk buffer on success or if the descriptor must be skipped
378 * __libeth_xsk_run_prog - run XDP program on XSk buffer
379 * @xdp: XSk buffer to run the prog on
382 * Internal inline abstraction to run XDP program on XSk Rx path. Handles
409 * libeth_xsk_run_prog - run XDP program on XSk path and handle all verdicts
410 * @xdp: XSk buffer to process
425 * @xdp: XSk buffer to process
429 * @md: metadata that should be filled to the XSk buffer
434 * Inline abstraction, XSk's counterpart of __libeth_xdp_run_pass(), see its
489 * @xdp: XSk buffer to process
505 * libeth_xsk_finalize_rx - finalize XDPSQ after an XSk NAPI polling loop
519 * Typical driver XSk Rx flow would be (excl. bulk and buff init, frag attach):
543 * LIBETH_XSK_DEFINE_FLUSH_TX - define a driver XSk ``XDP_TX`` flush function
549 __LIBETH_XDP_DEFINE_FLUSH_TX(name, prep, xmit, xsk)
554 * @flush: driver callback to flush an XSk ``XDP_TX`` bulk
557 u32 __LIBETH_XDP_DEFINE_RUN_PROG(name, flush, xsk)
566 bool __LIBETH_XDP_DEFINE_RUN_PASS(name, run, populate, xsk)
572 * @flush: driver callback to flush an XSk ``XDP_TX`` bulk
576 __LIBETH_XDP_DEFINE_RUN(name, run, flush, populate, XSK)
579 * LIBETH_XSK_DEFINE_FINALIZE - define a driver XSk NAPI poll finalize function
581 * @flush: driver callback to flush an XSk ``XDP_TX`` bulk
585 __LIBETH_XDP_DEFINE_FINALIZE(name, flush, finalize, xsk)
590 * struct libeth_xskfq - structure representing an XSk buffer (fill) queue
593 * @fqes: array of XSk buffer pointers
624 * libeth_xsk_buff_xdp_get_dma - get DMA address of XSk &libeth_xdp_buff
631 * libeth_xskfqe_alloc - allocate @n XSk Rx buffers