Page MenuHomeVyOS Platform

[QoS] Policy priority-queue is broken by default
In progress, LowPublicBUG

Description

Not critical but unhandled exception.

step to reproduce:

conf
set qos policy priority-queue test description 'test desc'
set qos interface eth1 egress test
commit
[ qos ]
VyOS had an issue completing a command.

We are sorry that you encountered a problem while using VyOS.
There are a few things you can do to help us (and yourself):
- Contact us using the online help desk if you have a subscription:
  https://support.vyos.io/
- Make sure you are running the latest version of VyOS available at:
  https://vyos.net/get/
- Consult the community forum to see how to handle this issue:
  https://forum.vyos.io
- Join us on Slack where our users exchange help and advice:
  https://vyos.slack.com

When reporting problems, please include as much information as possible:
- do not obfuscate any data (feel free to contact us privately if your 
  business policy requires it)
- and include all the information presented below

Report time:      2024-10-22 09:14:33
Image version:    VyOS 1.4.1-beta1
Release train:    sagitta

Built by:         Daniil Baturin <daniil@vyos.io>
Built on:         Fri 18 Oct 2024 12:42 UTC
Build UUID:       b2a9ec78-43ba-4b1d-8c6e-b12be35ee68c
Build commit ID:  0285f0f2f9bbb3-dirty

Architecture:     x86_64
Boot via:         installed image
System type:      KVM guest

Hardware vendor:  QEMU
Hardware model:   Standard PC (i440FX + PIIX, 1996)
Hardware S/N:     
Hardware UUID:    c06a5ce0-5e5b-4be4-9b54-f54866088f11

Traceback (most recent call last):
  File "/usr/libexec/vyos/conf_mode/qos.py", line 262, in <module>
    apply(c)
  File "/usr/libexec/vyos/conf_mode/qos.py", line 253, in apply
    tmp.update(shaper_config, direction)
  File "/usr/lib/python3/dist-packages/vyos/qos/priority.py", line 40, in update
    super().update(config, direction, priority=True)
  File "/usr/lib/python3/dist-packages/vyos/qos/base.py", line 404, in update
    self._build_base_qdisc(config['default'], default_cls_id)
  File "/usr/lib/python3/dist-packages/vyos/qos/base.py", line 185, in _build_base_qdisc
    self._cmd(default_tc)
  File "/usr/lib/python3/dist-packages/vyos/qos/base.py", line 75, in _cmd
    return cmd(command)
           ^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/vyos/utils/process.py", line 155, in cmd
    raise OSError(code, feedback)
FileNotFoundError: [Errno 2] failed to run command: tc qdisc replace dev eth1 parent 1:1 pfifo
returned: 
exit code: 2

noteworthy:
cmd 'tc qdisc del dev lo parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev lo root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc del dev eth0 parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev eth0 root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc del dev eth1 parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev eth1 root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc del dev eth2 parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev eth2 root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc del dev eth3 parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev eth3 root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc del dev pim6reg parent ffff:'
returned (out):

returned (err):
Error: Cannot find specified qdisc on specified device.
cmd 'tc qdisc del dev pim6reg root'
returned (out):

returned (err):
Error: Cannot delete qdisc with handle of zero.
cmd 'tc qdisc replace dev eth1 parent 1:1 pfifo'
returned (out):

returned (err):
Error: Failed to find specified qdisc.

[[qos]] failed
Commit failed
vyos@vyos# compare
+ qos {
+     interface eth1 {
+         egress "test"
+     }
+     policy {
+         priority-queue test {
+             description "test desc"
+         }
+     }
+ }

Details

Version
VyOS 1.4.1-beta1
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)