summaryrefslogtreecommitdiff
path: root/python/vyos/qos
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-01-20 10:19:42 +0100
committerGitHub <noreply@github.com>2024-01-20 10:19:42 +0100
commita3e64141cb4db8beae72a92d4c600b48b4f6515d (patch)
tree7670506ffc26ebaff15285a766c9be48e60f2bfb /python/vyos/qos
parent6eb683646505f9fd75e58161b48e47ef18311d9d (diff)
parent885a6335a50e63a0b9cc8d1e716150518bf19025 (diff)
downloadvyos-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)
Diffstat (limited to 'python/vyos/qos')
-rw-r--r--python/vyos/qos/base.py9
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