On Thu, May 06, 2021 at 02:43:49PM +0200, Magnus Karlsson wrote: > From: Magnus Karlsson <magnus.karlsson@xxxxxxxxx> > > Fix the tx_only micro-benchmark in xdpsock to take frame size into > consideration. It was hardcoded to the default value of frame_size > which is 4K. Changing this on the command line to 2K made half of the > packets illegal as they were outside the umem and were therefore > discarded by the kernel. > > Fixes: 46738f73ea4f ("samples/bpf: add use of need_wakeup flag in xdpsock") > Signed-off-by: Magnus Karlsson <magnus.karlsson@xxxxxxxxx> Acked-by: Maciej Fijalkowski <maciej.fijalkowski@xxxxxxxxx> > --- > samples/bpf/xdpsock_user.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/samples/bpf/xdpsock_user.c b/samples/bpf/xdpsock_user.c > index aa696854be78..53e300f860bb 100644 > --- a/samples/bpf/xdpsock_user.c > +++ b/samples/bpf/xdpsock_user.c > @@ -1255,7 +1255,7 @@ static void tx_only(struct xsk_socket_info *xsk, u32 *frame_nb, int batch_size) > for (i = 0; i < batch_size; i++) { > struct xdp_desc *tx_desc = xsk_ring_prod__tx_desc(&xsk->tx, > idx + i); > - tx_desc->addr = (*frame_nb + i) << XSK_UMEM__DEFAULT_FRAME_SHIFT; > + tx_desc->addr = (*frame_nb + i) * opt_xsk_frame_size; > tx_desc->len = PKT_SIZE; > } > > > base-commit: 9683e5775c75097c46bd24e65411b16ac6c6cbb3 > -- > 2.29.0 >