Alexander Lobakin
084ceda7de
libeth: xdp: add .ndo_xdp_xmit() helpers
...
Add helpers for implementing .ndo_xdp_xmit().
Same as for XDP_TX, accumulate up to 16 DMA-mapped frames on the stack,
then flush. If DMA mapping is failed for some reason, don't try mapping
further frames, but still flush what was already prepared.
DMA address of a head frame is stored in its headroom, assuming it
has enough of it for an 8 (or 4) byte value.
In addition to @prep and @xmit driver callbacks in XDP_TX, xmit also
needs @finalize to kick the XDPSQ after filling.
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com >
Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com >
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com >
2025-06-16 11:40:14 -07:00
..
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-06 11:50:47 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-12 09:50:36 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-05-30 09:15:40 -07:00
2025-06-03 11:53:55 -07:00
2025-06-08 09:07:37 +02:00
2025-05-24 08:29:32 +02:00
2025-06-08 09:07:37 +02:00
2025-05-30 20:21:36 +02:00
2025-06-08 09:07:37 +02:00
2025-05-23 13:26:24 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-13 18:21:57 -07:00
2025-06-03 13:24:14 -07:00
2025-06-08 09:07:37 +02:00
2025-06-07 10:05:35 -07:00
2025-05-27 15:22:01 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-03 08:39:20 -07:00
2025-06-08 09:07:37 +02:00
2025-05-22 18:04:43 +02:00
2025-06-08 09:07:37 +02:00
2025-05-24 22:49:07 +02:00
2025-05-27 16:48:47 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-05 08:49:30 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-03 11:53:55 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-16 11:40:14 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-06 11:50:47 -07:00
2025-05-31 15:44:16 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 11:33:00 -07:00
2025-06-08 09:07:37 +02:00
2025-05-28 14:55:35 -07:00
2025-06-05 08:20:21 -07:00
2025-06-10 14:35:40 +02:00
2025-06-08 09:07:37 +02:00
2025-05-31 19:12:53 -07:00
2025-06-08 09:07:37 +02:00
2025-06-12 09:50:36 -07:00
2025-06-06 13:16:50 -07:00
2025-06-06 13:20:26 -07:00
2025-06-02 11:04:29 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-05-31 07:53:30 -07:00
2025-06-05 08:07:24 -07:00
2025-06-06 13:22:31 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-05-27 16:28:02 -07:00
2025-06-08 09:07:37 +02:00
2025-06-06 20:02:51 -07:00
2025-06-06 11:50:47 -07:00
2025-06-08 09:07:37 +02:00
2025-05-27 10:27:53 -04:00
2025-06-04 11:26:17 -07:00
2025-05-29 08:15:35 -07:00
2025-06-08 09:07:37 +02:00
2025-06-08 09:07:37 +02:00
2025-05-27 10:27:54 -04:00
2025-06-06 11:50:47 -07:00
2025-06-08 09:07:37 +02:00
2025-05-23 07:09:00 +02:00