selftests: mlxsw: Increase the tolerance of backlog buildup
authorPetr Machata <petrm@nvidia.com>
Fri, 23 Apr 2021 12:19:47 +0000 (14:19 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 May 2021 08:12:59 +0000 (10:12 +0200)
[ Upstream commit dda7f4fa55839baeb72ae040aeaf9ccf89d3e416 ]

The intention behind this test is to make sure that qdisc limit is
correctly projected to the HW. However, first, due to rounding in the
qdisc, and then in the driver, the number cannot actually be accurate. And
second, the approach to testing this is to oversubscribe the port with
traffic generated on the same switch. The actual backlog size therefore
fluctuates.

In practice, this test proved to be noisier than the rest, and spuriously
fails every now and then. Increase the tolerance to 10 % to avoid these
issues.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Acked-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh

index b0cb1aa..33ddd01 100644 (file)
@@ -507,8 +507,8 @@ do_red_test()
        check_err $? "backlog $backlog / $limit Got $pct% marked packets, expected == 0."
        local diff=$((limit - backlog))
        pct=$((100 * diff / limit))
-       ((0 <= pct && pct <= 5))
-       check_err $? "backlog $backlog / $limit expected <= 5% distance"
+       ((0 <= pct && pct <= 10))
+       check_err $? "backlog $backlog / $limit expected <= 10% distance"
        log_test "TC $((vlan - 10)): RED backlog > limit"
 
        stop_traffic