lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aRdXhE0a-P3Ep1YE@mini-arch>
Date: Fri, 14 Nov 2025 08:23:32 -0800
From: Stanislav Fomichev <stfomichev@...il.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: davem@...emloft.net, netdev@...r.kernel.org, edumazet@...gle.com,
	pabeni@...hat.com, andrew+netdev@...n.ch, horms@...nel.org,
	shuah@...nel.org, ast@...nel.org, hawk@...nel.org,
	john.fastabend@...il.com, sdf@...ichev.me,
	linux-kselftest@...r.kernel.org
Subject: Re: [PATCH net-next] selftests: drv-net: xdp: make the XDP qstats
 tests less flaky

On 11/13, Jakub Kicinski wrote:
> The XDP qstats tests send 2k packets over a single socket.
> Looks like when netdev CI is busy running those tests in QEMU
> occasionally flakes. The target doesn't get to run at all
> before all 2000 packets are sent.
> 
> Lower the number of packets to 1000 and reopen the socket
> every 50 packets, to give RSS a chance to spread the packets
> to multiple queues.
> 
> For the netdev CI testing either lowering the count or using
> multiple sockets is enough, but let's do both for extra resiliency.
> 
> Signed-off-by: Jakub Kicinski <kuba@...nel.org>
> ---
> CC: shuah@...nel.org
> CC: ast@...nel.org
> CC: hawk@...nel.org
> CC: john.fastabend@...il.com
> CC: sdf@...ichev.me
> CC: linux-kselftest@...r.kernel.org
> ---
>  tools/testing/selftests/drivers/net/xdp.py | 15 +++++++++------
>  1 file changed, 9 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/testing/selftests/drivers/net/xdp.py b/tools/testing/selftests/drivers/net/xdp.py
> index a148004e1c36..834a37ae7d0d 100755
> --- a/tools/testing/selftests/drivers/net/xdp.py
> +++ b/tools/testing/selftests/drivers/net/xdp.py
> @@ -687,9 +687,12 @@ from lib.py import ip, bpftool, defer
>          "/dev/null"
>      # Listener runs on "remote" in case of XDP_TX
>      rx_host = cfg.remote if act == XDPAction.TX else None
> -    # We want to spew 2000 packets quickly, bash seems to do a good enough job
> -    tx_udp =  f"exec 5<>/dev/udp/{cfg.addr}/{port}; " \
> -        "for i in `seq 2000`; do echo a >&5; done; exec 5>&-"
> +    # We want to spew 1000 packets quickly, bash seems to do a good enough job
> +    # Each reopening of the socket gives us a differenot local port (for RSS)
> +    tx_udp = "for _ in `seq 20`; do " \
> +        f"exec 5<>/dev/udp/{cfg.addr}/{port}; " \
> +        "for i in `seq 50`; do echo a >&5; done; " \
> +        "exec 5>&-; done"

TIL about bash's /dev/udp, interesting..

Acked-by: Stanislav Fomichev <sdf@...ichev.me>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ