Skip to content

CNB94: xsk: Multi-buffer support

Ivan Vecera requested to merge ivecera/centos-stream-9:r94-RHEL-15250 into main

JIRA: https://issues.redhat.com/browse/RHEL-15250
Tested: Using attached self-tests [Results in JIRA]

The series adds support for multi-buffer to XSK. It is based on upstream series 3226e3139dfe ("Merge branch 'xsk-multi-buffer-support'") and contains also commits from upstream series 34e78bab67c5 ("Merge branch 'seltests/xsk: prepare for AF_XDP multi-buffer testing'") to make attached self-tests applicable.

Commits:

0c5f48599bed ("xsk: Simplify xp_aligned_validate_desc implementation")
f2f167583601 ("xsk: Remove unused xsk_buff_discard")
e2fa5c2068fb ("xsk: Remove unused inline function xsk_buff_discard()")
63a64a56bc3f ("xsk: prepare 'options' in xdp_desc for multi-buffer use")
81470b5c3c66 ("xsk: introduce XSK_USE_SG bind flag for xsk socket")
556444c4e683 ("xsk: prepare both copy and zero-copy modes to co-exist")
faa91b839b09 ("xsk: move xdp_buff's data length check to xsk_rcv_check")
804627751b42 ("xsk: add support for AF_XDP multi-buffer on Rx path")
b7f72a30e9ac ("xsk: introduce wrappers and helpers for supporting multi-buffer in Tx path")
1b725b0c8163 ("xsk: allow core/drivers to test EOP bit")
cf24f5a5feea ("xsk: add support for AF_XDP multi-buffer on Tx path")
07428da9e25a ("xsk: discard zero length descriptors in Tx path")
13ce2daa259a ("xsk: add new netlink attribute dedicated for ZC max frags")
24ea50127ecf ("xsk: support mbuf on ZC RX")
d5581966040f ("xsk: support ZC Tx multi-buffer in batch API")
49ca37d0d825 ("xsk: add multi-buffer documentation")
9a321fd3308e ("selftests/xsk: add xdp populate metadata test")
68e7322142f5 ("selftests: xsk: Deflakify STATS_RX_DROPPED test")
7a2050df244e ("selftests: xsk: Use correct UMEM size in testapp_invalid_desc")
ccd1b2933f8c ("selftests: xsk: Add test case for packets at end of UMEM")
c0801598e543 ("selftests: xsk: Add test UNALIGNED_INV_DESC_4K1_FRAME_SIZE")
d2e541494935 ("selftests/xsk: do not change XDP program when not necessary")
df82d2e89c41 ("selftests/xsk: generate simpler packets with variable length")
feb973a9094f ("selftests/xsk: add varying payload pattern within packet")
7a8a6762822a ("selftests/xsk: dump packet at error")
69fc03d220a3 ("selftests/xsk: add packet iterator for tx to packet stream")
d9f6d9709f87 ("selftests/xsk: store offset in pkt instead of addr")
041b68f688a3 ("selftests/xsx: test for huge pages only once")
86e41755b432 ("selftests/xsk: populate fill ring based on frags needed")
2f6eae0df1a8 ("selftests/xsk: generate data for multi-buffer packets")
7cd6df4f5ec2 ("selftests/xsk: adjust packet pacing for multi-buffer support")
17f1034dd76d ("selftests/xsk: transmit and receive multi-buffer packets")
f540d44e05cf ("selftests/xsk: add basic multi-buffer test")
1005a226da9a ("selftests/xsk: add unaligned mode test for multi-buffer")
697604492b64 ("selftests/xsk: add invalid descriptor test for multi-buffer")
f80ddbec4762 ("selftests/xsk: add metadata copy test for multi-buff")
807bf4da2049 ("selftests/xsk: add test for too many frags")
3666bccab43a ("selftests/xsk: reset NIC settings to default after running test suite")
d609f3d228a8 ("xsk: add multi-buffer support for sockets sharing umem")
9d0a67b9d42c ("xsk: Fix xsk_build_skb() error: 'skb' dereferencing possible ERR_PTR()")
a097627dcadd ("net: add missing net_device::xdp_zc_max_segs description")

Signed-off-by: Ivan Vecera ivecera@redhat.com

Merge request reports