Page MenuHomeVyOS Platform

Smoketest QoS limiter fails
Closed, ResolvedPublicBUG

Description

Smoketest QoS limiter fails:

DEBUG - Running Testcase: /usr/libexec/vyos/tests/smoke/cli/test_qos.py
DEBUG - test_01_cake (__main__.TestQoS.test_01_cake) ... ok
DEBUG - test_02_drop_tail (__main__.TestQoS.test_02_drop_tail) ... ok
DEBUG - test_03_fair_queue (__main__.TestQoS.test_03_fair_queue) ... ok
DEBUG - test_04_fq_codel (__main__.TestQoS.test_04_fq_codel) ... ok
DEBUG - test_05_limiter (__main__.TestQoS.test_05_limiter) ... FAIL
DEBUG - test_06_network_emulator (__main__.TestQoS.test_06_network_emulator) ... ok
DEBUG - test_07_priority_queue (__main__.TestQoS.test_07_priority_queue) ... ok
DEBUG - test_08_random_detect (__main__.TestQoS.test_08_random_detect) ... ok
DEBUG - test_09_rate_control (__main__.TestQoS.test_09_rate_control) ... ok
DEBUG - test_10_round_robin (__main__.TestQoS.test_10_round_robin) ... ok
DEBUG - test_11_shaper (__main__.TestQoS.test_11_shaper) ... ok
DEBUG - test_12_shaper_with_red_queue (__main__.TestQoS.test_12_shaper_with_red_queue) ... ok
DEBUG - test_13_shaper_delete_only_rule (__main__.TestQoS.test_13_shaper_delete_only_rule) ... ok
DEBUG - test_14_policy_limiter_marked_traffic (__main__.TestQoS.test_14_policy_limiter_marked_traffic) ... FAIL
DEBUG - test_15_traffic_match_group (__main__.TestQoS.test_15_traffic_match_group) ... ok
DEBUG - test_16_wrong_traffic_match_group (__main__.TestQoS.test_16_wrong_traffic_match_group) ... ok
DEBUG - test_17_cake_updates (__main__.TestQoS.test_17_cake_updates) ... ok
DEBUG - test_18_priority_queue_default (__main__.TestQoS.test_18_priority_queue_default) ... ok
DEBUG - test_19_priority_queue_default_random_detect (__main__.TestQoS.test_19_priority_queue_default_random_detect) ... ok
DEBUG - test_20_round_robin_policy_default (__main__.TestQoS.test_20_round_robin_policy_default) ... ok
DEBUG - test_21_shaper_hfsc (__main__.TestQoS.test_21_shaper_hfsc) ... ok
DEBUG - test_22_rate_control_default (__main__.TestQoS.test_22_rate_control_default) ... ok
DEBUG - test_23_policy_limiter_iif_filter (__main__.TestQoS.test_23_policy_limiter_iif_filter) ... FAIL
DEBUG - test_24_policy_shaper_match_ether (__main__.TestQoS.test_24_policy_shaper_match_ether) ... ok
DEBUG - 
DEBUG - ======================================================================
DEBUG - FAIL: test_05_limiter (__main__.TestQoS.test_05_limiter)
DEBUG - ----------------------------------------------------------------------
DEBUG - Traceback (most recent call last):
DEBUG -   File "/usr/libexec/vyos/tests/smoke/cli/test_qos.py", line 358, in test_05_limiter
DEBUG -     self.assertTrue('rate 1Gbit burst 15125b mtu 2Kb action drop overhead 0b linklayer ethernet' in tc_details)
DEBUG - AssertionError: False is not true
DEBUG - 
DEBUG - ======================================================================
DEBUG - FAIL: test_14_policy_limiter_marked_traffic (__main__.TestQoS.test_14_policy_limiter_marked_traffic)
DEBUG - ----------------------------------------------------------------------
DEBUG - Traceback (most recent call last):
DEBUG -   File "/usr/libexec/vyos/tests/smoke/cli/test_qos.py", line 776, in test_14_policy_limiter_marked_traffic
DEBUG -     self.assertIn('action order 1:  police 0x1 rate 20Gbit burst 3847500b mtu 2Kb action drop overhead 0b', tc_filters)
DEBUG - AssertionError: 'action order 1:  police 0x1 rate 20Gbit burst 3847500b mtu 2Kb action drop overhead 0b' not found in 'filter parent ffff: protocol all pref 20 fw chain 0 \nfilter parent ffff: protocol all pref 20 fw chain 0 handle 0x64 classid ffff:64 \n\n\taction order 1:  police 0x1 rate 20Gbit burst 3760Kb mtu 2Kb action drop overhead 0b \n\tref 1 bind 1 \n\nfilter parent ffff: protocol all pref 255 basic chain 0 \nfilter parent ffff: protocol all pref 255 basic chain 0 handle 0x1 flowid ffff:65 \n\taction order 1:  police 0x2 rate 1Gbit burst 125000000b mtu 2Kb action drop overhead 0b \n\tref 1 bind 1'
DEBUG - 
DEBUG - ======================================================================
DEBUG - FAIL: test_23_policy_limiter_iif_filter (__main__.TestQoS.test_23_policy_limiter_iif_filter)
DEBUG - ----------------------------------------------------------------------
DEBUG - Traceback (most recent call last):
DEBUG -   File "/usr/libexec/vyos/tests/smoke/cli/test_qos.py", line 1235, in test_23_policy_limiter_iif_filter
DEBUG -     self.assertIn('action order 1:  police 0x1 rate 20Gbit burst 3847500b mtu 2Kb action drop overhead 0b', tc_filters)
DEBUG - AssertionError: 'action order 1:  police 0x1 rate 20Gbit burst 3847500b mtu 2Kb action drop overhead 0b' not found in 'filter parent ffff: protocol all pref 20 basic chain 0 \nfilter parent ffff: protocol all pref 20 basic chain 0 handle 0x1 flowid ffff:64 \n  meta(rt_iif eq 2)\n\n\taction order 1:  police 0x1 rate 20Gbit burst 3760Kb mtu 2Kb action drop overhead 0b \n\tref 1 bind 1 \n\nfilter parent ffff: protocol all pref 255 basic chain 0 \nfilter parent ffff: protocol all pref 255 basic chain 0 handle 0x1 flowid ffff:65 \n\taction order 1:  police 0x2 rate 1Gbit burst 125000000b mtu 2Kb action drop overhead 0b \n\tref 1 bind 1'
DEBUG -

It seems burst bytes were replaced with Kilobytes:

DEBUG - AssertionError: 'action order 1:  police 0x1 rate 20Gbit burst 3847500b mtu 2Kb action drop overhead 0b' not found in 
...
action order 1:  police 0x1 rate 20Gbit burst 3760Kb mtu 2Kb action drop overhead 0b \n\t

Details

Version
VyOS 2025.06.03-0020-rolling
Is it a breaking change?
Perfectly compatible
Issue type
Bug (incorrect behavior)

Event Timeline

Viacheslav triaged this task as High priority.
Viacheslav changed the task status from Open to In progress.Jun 3 2025, 4:48 AM
Viacheslav claimed this task.

Caused by this commit that merges iproute2-next into the main branch of iproute2 and introduced in v6.15.0 which was pushed to debian-backports a couple of days ago.

Viacheslav moved this task from Need Triage to Completed on the VyOS Rolling board.
Viacheslav moved this task from Open to Finished on the VyOS 1.5 Circinus (1.5-stream-2025-Q2) board.
dmbaturin changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.Jul 9 2025, 1:03 PM