diff mbox series

[net] selftests: cmsg_ipv6: repeat the exact packet

Message ID 20240204165618.1489880-1-kuba@kernel.org (mailing list archive)
State Accepted
Commit 4b00d0c513da58b68df015968721b11396fe4ab3
Headers show
Series [net] selftests: cmsg_ipv6: repeat the exact packet | expand

Commit Message

Jakub Kicinski Feb. 4, 2024, 4:56 p.m. UTC
cmsg_ipv6 test requests tcpdump to capture 4 packets,
and sends until tcpdump quits. Only the first packet
is "real", however, and the rest are basic UDP packets.
So if tcpdump doesn't start in time it will miss
the real packet and only capture the UDP ones.

This makes the test fail on slow machine (no KVM or with
debug enabled) 100% of the time, while it passes in fast
environments.

Repeat the "real" / expected packet.

Fixes: 9657ad09e1fa ("selftests: net: test IPV6_TCLASS")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
CC: shuah@kernel.org
CC: linux-kselftest@vger.kernel.org
---
 tools/testing/selftests/net/cmsg_ipv6.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Simon Horman Feb. 6, 2024, 6:08 p.m. UTC | #1
On Sun, Feb 04, 2024 at 08:56:18AM -0800, Jakub Kicinski wrote:
> cmsg_ipv6 test requests tcpdump to capture 4 packets,
> and sends until tcpdump quits. Only the first packet
> is "real", however, and the rest are basic UDP packets.
> So if tcpdump doesn't start in time it will miss
> the real packet and only capture the UDP ones.
> 
> This makes the test fail on slow machine (no KVM or with
> debug enabled) 100% of the time, while it passes in fast
> environments.
> 
> Repeat the "real" / expected packet.
> 
> Fixes: 9657ad09e1fa ("selftests: net: test IPV6_TCLASS")
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>

I'm not sure if it is important, but doesn't this also:

Fixes: 05ae83d5a4a2 ("selftests: net: test IPV6_HOPLIMIT")

In any case, this looks good to me.

Reviewed-by: Simon Horman <horms@kernel.org>
patchwork-bot+netdevbpf@kernel.org Feb. 7, 2024, 1:40 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (main)
by David S. Miller <davem@davemloft.net>:

On Sun,  4 Feb 2024 08:56:18 -0800 you wrote:
> cmsg_ipv6 test requests tcpdump to capture 4 packets,
> and sends until tcpdump quits. Only the first packet
> is "real", however, and the rest are basic UDP packets.
> So if tcpdump doesn't start in time it will miss
> the real packet and only capture the UDP ones.
> 
> This makes the test fail on slow machine (no KVM or with
> debug enabled) 100% of the time, while it passes in fast
> environments.
> 
> [...]

Here is the summary with links:
  - [net] selftests: cmsg_ipv6: repeat the exact packet
    https://git.kernel.org/netdev/net/c/4b00d0c513da

You are awesome, thank you!
diff mbox series

Patch

diff --git a/tools/testing/selftests/net/cmsg_ipv6.sh b/tools/testing/selftests/net/cmsg_ipv6.sh
index f30bd57d5e38..8bc23fb4c82b 100755
--- a/tools/testing/selftests/net/cmsg_ipv6.sh
+++ b/tools/testing/selftests/net/cmsg_ipv6.sh
@@ -89,7 +89,7 @@  for ovr in setsock cmsg both diff; do
 	check_result $? 0 "TCLASS $prot $ovr - pass"
 
 	while [ -d /proc/$BG ]; do
-	    $NSEXE ./cmsg_sender -6 -p u $TGT6 1234
+	    $NSEXE ./cmsg_sender -6 -p $p $m $((TOS2)) $TGT6 1234
 	done
 
 	tcpdump -r $TMPF -v 2>&1 | grep "class $TOS2" >> /dev/null
@@ -126,7 +126,7 @@  for ovr in setsock cmsg both diff; do
 	check_result $? 0 "HOPLIMIT $prot $ovr - pass"
 
 	while [ -d /proc/$BG ]; do
-	    $NSEXE ./cmsg_sender -6 -p u $TGT6 1234
+	    $NSEXE ./cmsg_sender -6 -p $p $m $LIM $TGT6 1234
 	done
 
 	tcpdump -r $TMPF -v 2>&1 | grep "hlim $LIM[^0-9]" >> /dev/null