Bug #2308
openHFSC WebUI doesn't check for "Bandwidth" setting
0%
Description
Hi,
I configured pfSense todo some QoS. To get everything "firsthand" I used the HFSC module.
When configuring a HFSC queue you can add values for the "Service Curve" as shown in the attached screenshot.
If you add the realtime settings m1,d,m2 or just m2, and don't put anything inside the "Bandwidth"-field above, you can save and reload those settings.
After the reload you get error messages that say something like this:
php: : New alert found: There were error(s) loading the rules: pfctl: the sum of the child bandwidth higher than parent "root_em1" pfctl: linkshare sc exceeds parent's sc /tmp/rules.debug:47: errors in queue definition pfctl: the sum of the child bandwidth higher than parent "root_bridge1" pfctl: linkshare sc exceeds parent's sc /tmp/rules.debug:59: errors in queue definition pfctl: the sum of the child bandwidth higher than parent "root_bridge1" pfctl: linkshare sc exceeds parent's sc /tmp/rules.debug:60: errors in queue definition pfctl: Syntax error in config file: pf rules not loaded The line in question reads [ the sum of the child bandwidth higher than parent "root_em1" pfctl]:
This comes from the fact, that the empty "Bandwidth"-field results in a pf rule like this:
queue wweb on em1 qlimit 500 hfsc ( realtime (10%, 10000, 5%) )
which doesn't hold the "bandwidth"-statement and results in an error like:
[2.0.1-RELEASE][root@pfSense.localdomain]/tmp(4): pfctl -nf rules.debug
pfctl: the sum of the child bandwidth higher than parent "root_em1"
pfctl: linkshare sc exceeds parent's sc
rules.debug:47: errors in queue definition
pfctl: the sum of the child bandwidth higher than parent "root_bridge1"
pfctl: linkshare sc exceeds parent's sc
rules.debug:59: errors in queue definition
pfctl: the sum of the child bandwidth higher than parent "root_bridge1"
pfctl: linkshare sc exceeds parent's sc
rules.debug:60: errors in queue definition
[2.0.1-RELEASE][root@pfSense.localdomain]/tmp(5):
That's because the system assumes "100%" bandwidth if the option is omitted.
The errors on line 59 and line 60 are from those lines:
59: queue lweb on bridge1 qlimit 500 hfsc ( realtime (10%, 10000, 6%) )
60: queue lmail on bridge1 qlimit 500 hfsc ( realtime 5% )
Same shit, different pile ...
It would be nice to ask the user what todo, or to just set "m2" as the "Bandwidth" of the queue as one can use "m2" alone for realtime settings without a peak.
Files