Skip to content

rework mvneta napi_poll loop for XDP multi-buffers

Lorenzo Bianconi bpf netdev 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest6 patches 1 replyIn review
  2. v16 patches 4 repliesSuperseded

Changes in v2 from the cover letter

- rely on skb_frag_* utility routines to access page/offset/len of the xdp multi-buffer

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/6xdp: introduce xdp_get_shared_info_from_{buff,frame} utility routinesinclude/net/xdp.h+15 -00 replies
2/6net: mvneta: move skb build after descriptors processingdrivers/net/ethernet/marvell/mvneta.c+101 -570 replies
3/6net: mvneta: move mvneta_run_xdp after descriptors processingdrivers/net/ethernet/marvell/mvneta.c+7 -150 replies
4/6net: mvneta: drop all fragments in XDP_DROPdrivers/net/ethernet/marvell/mvneta.c+12 -140 replies
5/6net: mvneta: get rid of skb in mvneta_rx_queuedrivers/net/ethernet/marvell/mvneta.c+0 -60 replies
6/6net: mvneta: move rxq->left_size on the stackdrivers/net/ethernet/marvell/mvneta.c+13 -160 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH v2 net-next 0/6] rework mvneta napi_poll loop for XDP multi-buffers

Rework mvneta_rx_swbm routine in order to process all rx descriptors before building the skb or run the xdp program attached to the interface. Introduce xdp_get_shared_info_from_{buff,frame} utility routines to get the skb_shared_info pointer from xdp_buff or xdp_frame.
This is a preliminary series to enable multi-buffers and jumbo frames for XDP according to [1]

[1] https://github.com/xdp-project/xdp-project/blob/master/areas/core/xdp-multi-buffer01-design.org

Changes since v1:
- rely on skb_frag_* utility routines to access page/offset/len of the xdp multi-buffer

Lorenzo Bianconi (6):
xdp: introduce xdp_get_shared_info_from_{buff,frame} utility routines
net: mvneta: move skb build after descriptors processing
net: mvneta: move mvneta_run_xdp after descriptors processing
net: mvneta: drop all fragments in XDP_DROP
net: mvneta: get rid of skb in mvneta_rx_queue
net: mvneta: move rxq->left_size on the stack

 drivers/net/ethernet/marvell/mvneta.c | 221 ++++++++++++++------------
 include/net/xdp.h                     |  15 ++
 2 files changed, 138 insertions(+), 98 deletions(-)
Signature · 1 line
2.26.2