mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-23 12:14:10 +08:00
selftests: mlxsw: sch_red_core: Lower TBF rate
The RED test uses a pair of TBF shapers. The first to get predictably-sized stream of traffic, and second to get a 100% saturated chokepoint. To this chokepoint it injects individual packets. Because the chokepoint is saturated, these additional packets go straight to the backlog. This allows the test to check RED behavior across various queue sizes. The shapers are rated at 1Gbps, for historical reasons (before mlxsw supported TBF offload, the test used port speed to create the chokepoints). Machines with a low-power CPU may have trouble consistently generating 1Gbps of traffic, and the test then spuriously fails. Instead, drop the rate to 200Mbps (Spectrum has a guaranteed shaper rate granularity of 200Mbps, so anything lower is not guaranteed to work well). Because that means fewer packets will be mirrored in the ECN-mark test, adjust the passing condition accordingly. Signed-off-by: Petr Machata <petrm@nvidia.com> Link: https://patch.msgid.link/c6712f9c5de75ae0bc2ab3d8ea7d92aaaf93af95.1728316370.git.petrm@nvidia.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
7049166e51
commit
501fa2426b
@ -137,7 +137,7 @@ h2_create()
|
||||
# Prevent this by adding a shaper which limits the traffic in $h2 to
|
||||
# 1Gbps.
|
||||
|
||||
tc qdisc replace dev $h2 root handle 10: tbf rate 1gbit \
|
||||
tc qdisc replace dev $h2 root handle 10: tbf rate 200mbit \
|
||||
burst 128K limit 1G
|
||||
}
|
||||
|
||||
@ -199,7 +199,7 @@ switch_create()
|
||||
done
|
||||
|
||||
for intf in $swp3 $swp4; do
|
||||
tc qdisc replace dev $intf root handle 1: tbf rate 1gbit \
|
||||
tc qdisc replace dev $intf root handle 1: tbf rate 200mbit \
|
||||
burst 128K limit 1G
|
||||
done
|
||||
|
||||
@ -602,7 +602,7 @@ do_mark_test()
|
||||
# Above limit, everything should be mirrored, we should see lots of
|
||||
# packets.
|
||||
build_backlog $vlan $((3 * limit / 2)) tcp tos=0x01 >/dev/null
|
||||
busywait_for_counter 1100 +10000 \
|
||||
busywait_for_counter 1100 +2500 \
|
||||
$fetch_counter > /dev/null
|
||||
check_err_fail "$should_fail" $? "ECN-marked packets $subtest'd"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user