I'm not sure if this is the right place to post this, since the NSS build is not standard openwrt, but I thought I'd start here instead of cluttering up the Qualcommax NSS build topic. Also, I do not think I'm experiencing bugs in that firmware, I'm just unsure if I understand how to properly configure my setup in a way that will make sure that it's taking advantage of the offloading.
I've got 1Gb symmetric fiber and my provider requires a VLAN tag and PPPoE on the WAN. I am able to connect to the internet using the router via WIFI, so this configuration definitely works.
I made a build off of qosmios 24.10-nss branch with a few tweaks:
./scripts/feeds update -a \
&& ./scripts/feeds install -a \
&& cp nss-setup/config-nss.seed .config \
&& sed -i 's/# CONFIG_TARGET_qualcommax_ipq807x_DEVICE_linksys_mx4300 is not set/CONFIG_TARGET_qualcommax_ipq807x_DEVICE_linksys_mx4300=y/' .config \
&& sed -i 's/CONFIG_PACKAGE_wpad-mesh-openssl=y/CONFIG_PACKAGE_wpad-openssl=y/' .config \
&& sed -i 's/# CONFIG_PACKAGE_acme-acmesh-dnsapi is not set/CONFIG_PACKAGE_acme-acmesh-dnsapi=y/' .config \
&& echo 'CONFIG_DEFAULT_wpad-openssl=y' >> .config \
&& echo 'CONFIG_DEFAULT_dnsmasq-full=y' >> .config \
&& echo 'CONFIG_PACKAGE_luci-app-ddns=y' >> .config \
&& make defconfig V=s \
&& make download -j1 V=s \
&& make -j$(nproc) V=s
After flashing the firmware and setting everything up I am able to connect to wifi and access the internet, so that's awesome. However, I do see some SQM errors in the system log on reboot:
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (1): /sbin/tc qdisc show dev ifb@wan
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: Cannot find device "ifb@wan"
Wed Jun 4 20:02:13 2025 user.notice SQM: Starting SQM script: nss-zk.qos on pppoe-wan, in: 750000 Kbps, out: 750000 Kbps
Wed Jun 4 20:02:13 2025 user.notice SQM: sqm_prepare_script: loading required kernel module: qca_nss_qdisc
Wed Jun 4 20:02:13 2025 user.notice SQM: sqm_prepare_script: loading required kernel module: act_nssmirred
Wed Jun 4 20:02:13 2025 kern.err kernel: [ 50.431191] __nss_qdisc_init[2380]:Qdisc ffffff8007e33000 (type 5): interface unknown to nss driver pppoe-wan
Wed Jun 4 20:02:13 2025 kern.warn kernel: [ 50.431255] nss_qdisc_destroy[1948]:Qdisc ffffff8007e33000 (type 5): destroy not ready, state: -1
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan root handle 1: nsstbl rate 750000kbit burst 93574 mtu 1534 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: Invalid argument
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 1: handle 10: nssprio bands 3 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 10:1 handle 100: nsstbl rate 75000kbit burst 9357 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 100: handle 1000: nsspfifo limit 100 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 10:2 handle 200: nsstbl rate 300000kbit burst 28072 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 200: handle 2000: nssred limit 100k min 30k max 80k avpkt 1k burst 55 probability 0.50 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev pppoe-wan parent 10:3 handle 300: nssfq_codel limit 6111 target 5ms flows 1024 quantum 1534 interval 100ms set_default accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: sqm_start: egress shaping activated
Wed Jun 4 20:02:13 2025 kern.err kernel: [ 50.531878] nss_mirred_init[143]:No NSS FW device found for pppoe-wan
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc filter add dev pppoe-wan parent ffff: protocol all u32 match u32 0 0 action nssmirred redirect dev ifb@pppoe-wan fromdev pppoe-wan
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such device We have an error talking to the kernel
Wed Jun 4 20:02:13 2025 kern.err kernel: [ 50.547194] __nss_qdisc_init[2380]:Qdisc ffffff801cf77400 (type 5): interface unknown to nss driver ifb@pppoe-wan
Wed Jun 4 20:02:13 2025 kern.warn kernel: [ 50.547268] nss_qdisc_destroy[1948]:Qdisc ffffff801cf77400 (type 5): destroy not ready, state: -1
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan root handle 1: nsstbl rate 750000kbit burst 93574 mtu 1534 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: Invalid argument
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 1: handle 10: nssprio bands 3 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 10:1 handle 100: nsstbl rate 75000kbit burst 9357 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 100: handle 1000: nsspfifo limit 100 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 10:2 handle 200: nsstbl rate 300000kbit burst 28072 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 200: handle 2000: nssred limit 100k min 30k max 80k avpkt 1k burst 55 ecn probability 0.50 accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: FAILURE (2): /sbin/tc qdisc add dev ifb@pppoe-wan parent 10:3 handle 300: nssfq_codel limit 6111 target 5ms flows 1024 quantum 1534 interval 100ms set_default accel_mode 0
Wed Jun 4 20:02:13 2025 user.notice SQM: ERROR: cmd_wrapper: tc: LAST ERROR: RTNETLINK answers: No such file or directory
Wed Jun 4 20:02:13 2025 user.notice SQM: sqm_start: ingress shaping activated
Wed Jun 4 20:02:13 2025 user.notice SQM: nss-zk.qos was started on pppoe-wan successfully
Wed Jun 4 20:02:13 2025 user.notice firewall: Reloading firewall due to ifup of wan (pppoe-wan)
Here's what I gathered from "Unsaved Changes"
while setting things up in luci.
# /etc/config/network:
uci set network.wan.proto='pppoe'
uci set network.wan.username='*****'
uci set network.wan.password='*****'
uci set network.wan.ipv6='auto'
uci set network.wan.mtu='1492'
uci add network device
uci set network.@device[-1].type='8021q'
uci set network.@device[-1].ifname='wan'
uci set network.@device[-1].vid='201'
uci set network.@device[-1].name='wan.201'
uci set network.wan.device='wan.201'
After some searching I came to believe that I should set up SQM on ppoe-wan, but I'm definitely not positive if that's the correct interface or whether I've got the correct overhead for ppoe and vlan tagging on the WAN.
# /etc/config/sqm:
config queue 'eth1'
option enabled '1'
option interface 'pppoe-wan'
option download '750000'
option upload '750000'
option qdisc 'fq_codel'
option script 'nss-zk.qos'
option overhead '42'
Any help or pointers in the right direction would be greatly appreciated.