> > Took your patches for a test run with the AF_XDP sample xdpsock on an > i40e card and the throughput degradation is between 2 to 6% depending > on the setup and microbenchmark within xdpsock that is executed. And > this is without sending any multi frame packets. Just single frame > ones. Tirtha made changes to the i40e driver to support this new > interface so that is being included in the measurements.
Hi Magnus,
thx for working on it. Assuming the fragmented part is only initialized/accessed
if mb is set (so for multi frame packets), I would not expect any throughput
degradation in the single frame scenario. Can you please share the i40e
support added by Tirtha?
>
> What performance do you see with the mvneta card? How much are we
> willing to pay for this feature when it is not being used or can we in
> some way selectively turn it on only when needed?
IIRC I did not get sensible throughput degradation on mvneta but I will re-run
the tests running an updated bpf-next tree.
Regards,
Lorenzo
>
> Thanks: Magnus
>
> > Eelco Chaudron (4):
> > bpf: add multi-buff support to the bpf_xdp_adjust_tail() API
> > bpd: add multi-buffer support to xdp copy helpers
> > bpf: add new frame_length field to the XDP ctx
> > bpf: update xdp_adjust_tail selftest to include multi-buffer
> >
> > Lorenzo Bianconi (10):
> > xdp: introduce mb in xdp_buff/xdp_frame
> > xdp: add xdp_shared_info data structure
> > net: mvneta: update mb bit before passing the xdp buffer to eBPF layer
> > xdp: add multi-buff support to xdp_return_{buff/frame}
> > net: mvneta: add multi buffer support to XDP_TX
> > net: mvneta: enable jumbo frames for XDP
> > net: xdp: add multi-buff support to xdp_build_skb_from_fram
> > bpf: move user_size out of bpf_test_init
> > bpf: introduce multibuff support to bpf_prog_test_run_xdp()
> > bpf: test_run: add xdp_shared_info pointer in bpf_test_finish
> > signature
> >
> > drivers/net/ethernet/marvell/mvneta.c | 182 ++++++++++--------
> > include/linux/filter.h | 7 +
> > include/net/xdp.h | 105 +++++++++-
> > include/uapi/linux/bpf.h | 1 +
> > net/bpf/test_run.c | 109 +++++++++--
> > net/core/filter.c | 134 ++++++++++++-
> > net/core/xdp.c | 103 +++++++++-
> > tools/include/uapi/linux/bpf.h | 1 +
> > .../bpf/prog_tests/xdp_adjust_tail.c | 105 ++++++++++
> > .../selftests/bpf/prog_tests/xdp_bpf2bpf.c | 127 ++++++++----
> > .../bpf/progs/test_xdp_adjust_tail_grow.c | 17 +-
> > .../bpf/progs/test_xdp_adjust_tail_shrink.c | 32 ++-
> > .../selftests/bpf/progs/test_xdp_bpf2bpf.c | 3 +-
> > 13 files changed, 767 insertions(+), 159 deletions(-)
> >
> > --
> > 2.30.2
> >
>
signature.asc
Description: PGP signature
