]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
selftests: vlan_bridge_binding: Fix flaky operational state check
authorIdo Schimmel <idosch@nvidia.com>
Wed, 17 Jun 2026 10:43:23 +0000 (13:43 +0300)
committerJakub Kicinski <kuba@kernel.org>
Fri, 19 Jun 2026 01:15:34 +0000 (18:15 -0700)
check_operstate() busy waits for up to one second for the operational
state to change to the expected state. This is not enough since carrier
loss events can be delayed by the kernel for up to one second (see
__linkwatch_run_queue()), leading to sporadic failures.

Fix by increasing the busy wait period to two seconds.

Fixes: dca12e9ab760 ("selftests: net: Add a VLAN bridge binding selftest")
Reported-by: Jakub Kicinski <kuba@kernel.org>
Closes: https://lore.kernel.org/netdev/20260616092733.3a31be4d@kernel.org/
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Link: https://patch.msgid.link/20260617104323.1069457-1-idosch@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/vlan_bridge_binding.sh

index e8c02c64e03a47a3e1b71686f7d80c1a0f48b034..d04caa14202d038050503a0622ba5f1ba6aa3637 100755 (executable)
@@ -64,7 +64,7 @@ check_operstate()
        local expect=$1; shift
        local operstate
 
-       operstate=$(busywait 1000 \
+       operstate=$(busywait 2000 \
                        operstate_is "$dev" "$expect")
        check_err $? "Got operstate of $operstate, expected $expect"
 }