]> git.ipfire.org Git - thirdparty/linux.git/commit
selftests: forwarding: vxlan_bridge_1q_mc_ul: Fix flakiness
authorPetr Machata <petrm@nvidia.com>
Tue, 9 Dec 2025 15:29:02 +0000 (16:29 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 11 Dec 2025 08:53:15 +0000 (00:53 -0800)
commit0c8b9a68b344ba2aa327278688d66c31f5f04275
treef54ad609fc8fe0ac8d40fcfed010f101974421e1
parent0842e34849f65dc0aef0c7a0baae1dceb2b8bb33
selftests: forwarding: vxlan_bridge_1q_mc_ul: Fix flakiness

This test runs an overlay traffic, forwarded over a multicast-routed VXLAN
underlay. In order to determine whether packets reach their intended
destination, it uses a TC match. For convenience, it uses a flower match,
which however does not allow matching on the encapsulated packet. So
various service traffic ends up being indistinguishable from the test
packets, and ends up confusing the test. To alleviate the problem, the test
uses sleep to allow the necessary service traffic to run and clear the
channel, before running the test traffic. This worked for a while, but
lately we have nevertheless seen flakiness of the test in the CI.

Fix the issue by using u32 to match the encapsulated packet as well. The
confusing packets seem to always be IPv6 multicast listener reports.
Realistically they could be ARP or other ICMP6 traffic as well. Therefore
look for ethertype IPv4 in the IPv4 traffic test, and for IPv6 / UDP
combination in the IPv6 traffic test.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Link: https://patch.msgid.link/6438cb1613a2a667d3ff64089eb5994778f247af.1765289566.git.petrm@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/forwarding/config
tools/testing/selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh