diff options
author | Christian Breunig <christian@breunig.cc> | 2024-01-20 10:19:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-20 10:19:42 +0100 |
commit | a3e64141cb4db8beae72a92d4c600b48b4f6515d (patch) | |
tree | 7670506ffc26ebaff15285a766c9be48e60f2bfb | |
parent | 6eb683646505f9fd75e58161b48e47ef18311d9d (diff) | |
parent | 885a6335a50e63a0b9cc8d1e716150518bf19025 (diff) | |
download | vyos-1x-a3e64141cb4db8beae72a92d4c600b48b4f6515d.tar.gz vyos-1x-a3e64141cb4db8beae72a92d4c600b48b4f6515d.zip |
Merge pull request #2861 from vyos/mergify/bp/sagitta/pr-2855
T5963: Fix QoS shaper rate calculations and set default 1Gbit (backport #2855)
-rw-r--r-- | python/vyos/qos/base.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/python/vyos/qos/base.py b/python/vyos/qos/base.py index d8bbfe970..27045043e 100644 --- a/python/vyos/qos/base.py +++ b/python/vyos/qos/base.py @@ -1,4 +1,4 @@ -# Copyright 2022-2023 VyOS maintainers and contributors <maintainers@vyos.io> +# Copyright 2022-2024 VyOS maintainers and contributors <maintainers@vyos.io> # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -166,14 +166,17 @@ class QoSBase: } if rate == 'auto' or rate.endswith('%'): - speed = 10 + speed = 1000 + default_speed = speed # Not all interfaces have valid entries in the speed file. PPPoE # interfaces have the appropriate speed file, but you can not read it: # cat: /sys/class/net/pppoe7/speed: Invalid argument try: speed = read_file(f'/sys/class/net/{self._interface}/speed') if not speed.isnumeric(): - Warning('Interface speed cannot be determined (assuming 10 Mbit/s)') + Warning('Interface speed cannot be determined (assuming 1000 Mbit/s)') + if int(speed) < 1: + speed = default_speed if rate.endswith('%'): percent = rate.rstrip('%') speed = int(speed) * int(percent) // 100 |