Help me update my HFSC shaper scripts for fw4/nftables

So maybe try to see how gaming feels with and without sqm when you start heavy network activity on another computer in your home network...
My point is, queue management will only be noticeable when queues are building up, if say you have a high capacity link, but only ever use a single active machine for gaming, no queues will build and smart queueing will never engage and help (all the while still eating up CPU cycles on the router).

I use this on a 100/40 Mbps link for a family of five and the two gamers in the family so far never complained about latency issues even with other gunk going on n the network, including speedtests and larger downloads. (Mind you, I am not using this script but plain sqm-scripts in good eat your own dog-food tradition)

3 Likes

Could you guide me, how to enable these options? Thank you :pray:

DOWNRATE=560000
UPRATE=560000
irqbalance + Packet Steering ON

cat /proc/interrupts

root@OpenWrt:~# cat /proc/interrupts
           CPU0       CPU1
 25:          0          0     GIC-0  27 Edge      gt
 26:     923534    1084129     GIC-0  29 Edge      twd
 27:          0          0      MPIC   5 Level     armada_370_xp_per_cpu_tick
 29:     377320          0     GIC-0  34 Level     mv64xxx_i2c
 30:         58          0     GIC-0  44 Level     ttyS0
 40:          0          0     GIC-0  41 Level     f1020300.watchdog
 44:          0          0     GIC-0  96 Level     f1020300.watchdog
 45:    4187101          0      MPIC   8 Level     eth0
 46:          0          0     GIC-0  50 Level     ehci_hcd:usb1
 47:          0          0     GIC-0  51 Level     f1090000.crypto
 48:          0          0     GIC-0  52 Level     f1090000.crypto
 49:          0          0     GIC-0  58 Level     ahci-mvebu[f10a8000.sata]
 50:         88          0     GIC-0 116 Level     marvell-nfc
 51:     565386          0     GIC-0  57 Level     mmc0
 52:          0          0     GIC-0  49 Level     xhci-hcd:usb2
 53:          2          0     GIC-0  54 Level     f1060800.xor
 54:          2          0     GIC-0  97 Level     f1060900.xor
 58:          0          0  mv88e6xxx-g1   3 Edge      mv88e6xxx-f1072004.mdio-mii:00-g1-atu-prob
 60:          0          0  mv88e6xxx-g1   5 Edge      mv88e6xxx-f1072004.mdio-mii:00-g1-vtu-prob
 62:          3          1  mv88e6xxx-g1   7 Edge      mv88e6xxx-f1072004.mdio-mii:00-g2
 64:          0          0  mv88e6xxx-g2   0 Edge      mv88e6xxx-1:00
 65:          0          0  mv88e6xxx-g2   1 Edge      mv88e6xxx-1:01
 66:          0          0  mv88e6xxx-g2   2 Edge      mv88e6xxx-1:02
 67:          1          0  mv88e6xxx-g2   3 Edge      mv88e6xxx-1:03
 68:          2          1  mv88e6xxx-g2   4 Edge      mv88e6xxx-1:04
 79:          0          0  mv88e6xxx-g2  15 Edge      mv88e6xxx-f1072004.mdio-mii:00-watchdog
 80:          0          0  f1018100.gpio  24 Edge      gpio-keys
 81:          0          0  f1018100.gpio  29 Edge      gpio-keys
 82:       1441     288959     GIC-0  61 Level     mwlwifi
 83:     693616          0     GIC-0  65 Level     mwlwifi
IPI0:          0          1  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:       2328       2348  Rescheduling interrupts
IPI3:     122544     878657  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:          0          0  IRQ work interrupts
IPI6:          0          0  completion interrupts
Err:          0
root@OpenWrt:~#

cat /proc/softirqs

root@OpenWrt:~# cat /proc/softirqs
                    CPU0       CPU1
          HI:          0          0
       TIMER:     109239      50023
      NET_TX:     584183     646268
      NET_RX:    5578908    1677211
       BLOCK:          0          0
    IRQ_POLL:          0          0
     TASKLET:    1248252     574399
       SCHED:     170973     169101
     HRTIMER:          0          0
         RCU:      23247      24089
root@OpenWrt:~#


I can carry out the tests, in total to help I have no drama.

So this script helps at a certain extent. I have a feeling there’s other packages installed besides sqm and such that eat up cpu resources. I wonder if any of you guys know or have an idea of what packages that aren’t related to sqm that take up cpu resources?

Got a question in regards to the script. Under limiting udp traffic going more than 450 packets per second would you guys recommend that to be enabled or disabled for a gaming pc. I’m assuming for pc the packets are traveling more than 450 but I can’t justify that. I just want to know if anyone has any recorded performance benefit from having it on or off.

You are still maxing out CPU0*... so either a) irqbalance or b) packet steering did not work:
for a) make sure to edit /etc/config/irqbalance and enable it
for b) run:

for file in /sys/class/net/*
do
	for queue in ${file}/queues/rx-*
	do
		echo ${queue} RX rps_cpus
		cat ${queue}"/rps_cpus"
	done
	for queue in ${file}/queues/tx-*
	do
		echo ${queue} TX xps_cpus
		cat ${queue}"/xps_cpus"
	done
done

and post the output here...

*) maxing out CPU0 only for download implying that moving upload cake to CPU1 worked, but there is still too much gunk on CPU0 besides the cake qdisc. Depending on your SoC that might be improved by irqbalance, or it might not...

 -----------------------------------------------------
root@OpenWrt:~# for file in /sys/class/net/*
> do
> for queue in ${file}/queues/rx-*
> do
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> echo ${queue} RX rps_cpus
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> cat ${queue}"/rps_cpus"
> done
> for queue in ${file}/queues/tx-*
> do
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> echo ${queue} TX xps_cpus
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> cat ${queue}"/xps_cpus"
> done
> done

Thanks, it seems my scriptlet dod not work with ash/busybox, please try:

for file in /sys/class/net/*
do
    for queue in "${file}"/queues/rx-*
    do
	echo "${queue}" RX rps_cpus
	cat "${queue}"/rps_cpus
    done
    for queue in "${file}"/queues/tx-*
    do
	echo "${queue}" TX xps_cpus
	cat "${queue}"/xps_cpus
    done
done
root@OpenWrt:~# for file in /sys/class/net/*
> do
>     for queue in "${file}"/queues/rx-*
>     do
> echo "${queue}" RX rps_cpus
> cat "${queue}"/rps_cpus
>     done
>     for queue in "${file}"/queues/tx-*
>     do
> echo "${queue}" TX xps_cpus
> cat "${queue}"/xps_cpus
>     done
> done
/sys/class/net/br-lan/queues/rx-0 RX rps_cpus
0
/sys/class/net/br-lan/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/eth0/queues/rx-0 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-1 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-2 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-3 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-4 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-5 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-6 RX rps_cpus
0
/sys/class/net/eth0/queues/rx-7 RX rps_cpus
0
/sys/class/net/eth0/queues/tx-0 TX xps_cpus
1
/sys/class/net/eth0/queues/tx-1 TX xps_cpus
2
/sys/class/net/eth0/queues/tx-2 TX xps_cpus
1
/sys/class/net/eth0/queues/tx-3 TX xps_cpus
2
/sys/class/net/eth0/queues/tx-4 TX xps_cpus
1
/sys/class/net/eth0/queues/tx-5 TX xps_cpus
2
/sys/class/net/eth0/queues/tx-6 TX xps_cpus
1
/sys/class/net/eth0/queues/tx-7 TX xps_cpus
2
/sys/class/net/ifb-pppoe-wan/queues/rx-0 RX rps_cpus
0
/sys/class/net/ifb-pppoe-wan/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/lan1/queues/rx-0 RX rps_cpus
0
/sys/class/net/lan1/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/lan2/queues/rx-0 RX rps_cpus
0
/sys/class/net/lan2/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/lan3/queues/rx-0 RX rps_cpus
0
/sys/class/net/lan3/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/lan4/queues/rx-0 RX rps_cpus
0
/sys/class/net/lan4/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/lo/queues/rx-0 RX rps_cpus
0
/sys/class/net/lo/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/phy1-ap0/queues/rx-0 RX rps_cpus
0
/sys/class/net/phy1-ap0/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/pppoe-wan/queues/rx-0 RX rps_cpus
0
/sys/class/net/pppoe-wan/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/teql0/queues/rx-0 RX rps_cpus
0
/sys/class/net/teql0/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/wan/queues/rx-0 RX rps_cpus
0
/sys/class/net/wan/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
/sys/class/net/wlan0/queues/rx-0 RX rps_cpus
0
/sys/class/net/wlan0/queues/tx-0 TX xps_cpus
cat: read error: No such file or directory
root@OpenWrt:~#

Mmmh, this tries to cleverly distribute the queues between CPUs, but I guess with cake we will only ever use a single queue anyway and that might be stuck on CPU0. Try:

for file in /sys/class/net/*
do
echo 3 > $file"/queues/rx-*/rps_cpus"
echo 3 > $file"/queues/tx-*/xps_cpus"
done

and then run a speedtest again...

1 Like

P.S.: This is a real rat's nest how different approaches to optimisation interfere with each other with all individually being quite sensible.

1 Like

creo que no funciono.

root@OpenWrt:~# for file in /sys/class/net/*
> do
> echo 3 > $file"/queues/rx-*/rps_cpus"
> echo 3 > $file"/queues/tx-*/xps_cpus"
> done
-ash: can't create /sys/class/net/br-lan/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/br-lan/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/eth0/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/eth0/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/ifb-pppoe-wan/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/ifb-pppoe-wan/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan1/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan1/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan2/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan2/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan3/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan3/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan4/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lan4/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lo/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/lo/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/phy1-ap0/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/phy1-ap0/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/pppoe-wan/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/pppoe-wan/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/teql0/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/teql0/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/wan/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/wan/queues/tx-*/xps_cpus: nonexistent directory
-ash: can't create /sys/class/net/wlan0/queues/rx-*/rps_cpus: nonexistent directory
-ash: can't create /sys/class/net/wlan0/queues/tx-*/xps_cpus: nonexistent directory
root@OpenWrt:~#

hi, is it possible to add cake

My bad, try:

for file in /sys/class/net/*
do
	for rxqueue in "${file}"/queues/rx-*
	do
		if [ -f "${rxqueue}"/rps_cpus ]
		then
			echo "rxqueue:" ${rxqueue}
			echo "previous value" $(cat "${rxqueue}"/rps_cpus)
			echo 3 > "${rxqueue}"/rps_cpus
			echo "current value" $(cat "${rxqueue}"/rps_cpus)
		fi 
	done
done

This should work somewhat better... and will report the previous and current value...

Parte 1

 -----------------------------------------------------
root@OpenWrt:~# for file in /sys/class/net/*
> do
> for rxqueue in "${file}"/queues/rx-*
> do
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> if [ -f "${rxqueue}"/rps_cpus ]
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> then
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> echo "rxqueue:" ${rxqueue}
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset

Parte 2

> echo "previous value" $(cat "${rxqueue}"/rps_cpus)
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> echo 3 > "${rxqueue}"/rps_cpus
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> echo "current value" $(cat "${rxqueue}"/rps_cpus)
>
.                  fw_setsys          netifd             tc
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
alias              gunzip             nslookup           top
ash                gzip               ntpd               touch
askfirst           halt               ntpd-hotplug       tr
awk                hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
command            ipcalc.sh          pwd                ubiupdatevol
config_generate    irqbalance         px5g               ubus
continue           iw                 read               ubusd
cp                 iwinfo             readlink           ucc
crond              jffs2mark          readonly           uci
crontab            jffs2reset         reboot             uclient-fetch
cut                jobs               reload_config      ucode
date               jshn               reset              udevtrigger
dbclient           jsonfilter         resize             udhcpc
dd                 kill               return             uhttpd
devstatus          killall            rm                 ujail
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
echo               lock               seq                upgraded
egrep              logd               service            uptime
env                logger             set                urandom_seed
eval               login              sh                 urngd
exec               logread            sha256sum          usign
exit               ls                 shift              utpl
export             lsmod              signify            utrace
expr               luci-bwc           sleep              validate_data
false              luci-reload        sort               vi
fan_ctrl.sh        md5sum             source             wait
fg                 mkdir              ssh                wc
fgrep              mkfifo             start-stop-daemon  wget
find               mknod              strings            which
firstboot          mkswap             swapoff            wifi
flock              mktemp             swapon             wpa_supplicant
free               modinfo            switch_root        wpad
fsync              modprobe           sync               xargs
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> fi
> done
> done

Crap, please try:

for file in /sys/class/net/*
do
echo "file:" ${file}
for rxqueue in "${file}"/queues/rx-*
do
if [ -f "${rxqueue}"/rps_cpus ]
then
echo "rxqueue:" ${rxqueue}
echo "previous value" $(cat "${rxqueue}"/rps_cpus)
echo 3 > "${rxqueue}"/rps_cpus
echo "current value" $(cat "${rxqueue}"/rps_cpus)
fi 
done
done

Indentation works well for scripts but for copy and paste to a shell that is less ideal, hence the left alignment...

1 Like

I have an experimental version on my “dev” branch where you can switch to cake as root qdisc instead of HFSC.

If you want to try it:

Download the scripts to your router with this command:

wget -O /etc/init.d/SimpleHFSCgamerscript https://raw.githubusercontent.com/hudra0/routerperf/dev/SimpleHFSCgamerscript && chmod +x /etc/init.d/SimpleHFSCgamerscript && wget -O /etc/SimpleHFSCgamerscript.sh https://raw.githubusercontent.com/hudra0/routerperf/dev/SimpleHFSCgamerscript.sh && chmod +x /etc/SimpleHFSCgamerscript.sh

To enable Cake in SimpleHFSCgamerscript, set the gameqdisc variable to "cake" in the script configuration:

gameqdisc="cake"

When Cake is enabled, the script will use the Cake-specific configuration options instead of the HFSC settings.

Cake Configuration Options

The script provides several variables to customize the behavior of Cake:

  • COMMON_LINK_PRESETS: Predefined settings for common link types, such as Ethernet, DOCSIS, or ADSL.
  • OVERHEAD: Additional overhead per packet in bytes.
  • MPU: Minimum packet size in bytes.
  • LINK_COMPENSATION: Compensation for specific link types (ATM, PTM, or none).
  • ETHER_VLAN_KEYWORD: Number of VLAN tags in the Ethernet frame.
  • PRIORITY_QUEUE_INGRESS and PRIORITY_QUEUE_EGRESS: Priority queues for ingress and egress traffic.
  • HOST_ISOLATION: Enable or disable host isolation to prevent a single host from claiming all available bandwidth.
  • NAT_INGRESS and NAT_EGRESS: Enable or disable NAT for ingress and egress traffic.
  • WASH_INGRESS and WASH_EGRESS: Clear incoming or outgoing DSCP markings.
  • ACK_FILTER_EGRESS: Prioritize acknowledgment packets based on connection asymmetry.
  • RTT: Expected average packet round-trip time in milliseconds.
  • AUTORATE_INGRESS: Enable or disable automatic bandwidth adjustment for ingress traffic.
  • EXTRA_PARAMETERS_INGRESS and EXTRA_PARAMETERS_EGRESS: Additional parameters for ingress and egress traffic (for experts).

For more information about these options and their possible values, refer to the comments in the script configuration section and the Cake manpage.

4 Likes

Parte 1

root@OpenWrt:~#  -----------------------------------------------------
.config/           fwtool             netmsg             tee
:                  getopts            netstat            test
[                  getrandom          nft                time
[[                 grep               nice               times
-ash: alias              gunzip             nslookup           top
-----------------------------------------------------: not found
root@OpenWrt:~# root@OpenWrt:~# for file in /sys/class/net/*
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
-ash: root@OpenWrt:~#: not found
root@OpenWrt:~# > do
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubirsvol
root@OpenWrt:~# > for rxqueue in "${file}"/queues/rx-*
df                 kmodloader         rmdir              ulimit
dirname            ldd                rmmod              umask
dmesg              led.sh             route              umount
dnsmasq            less               rpcd               unalias
dropbear           let                scp                uname
dropbearkey        ln                 seccomp-trace      uniq
du                 local              sed                unset
-ash: rxqueue: not found
echo               lock               seq                upgraded
egrep              logd               service            uptime
root@OpenWrt:~# > do
exit               ls                 shift              utpl
export             lsmod              signify            utrace
root@OpenWrt:~# >
-ash: syntax error: unexpected newlinefalse              luci-reload        sort                                                                                                                                                                            vi

fan_ctrl.sh        md5sum             source             wait
root@OpenWrt:~# .                  fw_setsys          netifd             tc
fw3                mount              sysctl             yes
fw4                mount_root         sysupgrade         zcat
fw_printenv        mtd                tail
fw_printsys        mv                 tar
fw_setenv          nc                 taskset
> if [ -f "${rxqueue}"/rps_cpus ]
>
.                  fw_setsys          netifd             tc
.config/           root@OpenWrt:~# .config/           fwtool             netmsg                                                                                                                                                                          tee
-ash: .config/: Permission denied
root@OpenWrt:~# :                  getopts            netstat            test
root@OpenWrt:~# [                  getrandom          nft                time
ash: missing ]
root@OpenWrt:~# [[                 grep               nice               times
ash: missing ]]
root@OpenWrt:~# alias              gunzip             nslookup           top
alias: gunzip not found
alias: nslookup not found
alias: top not found
root@OpenWrt:~# ash                gzip               ntpd               touch
ash: can't open 'gzip': No such file or directory
root@OpenWrt:~# askfirst           halt               ntpd-hotplug       tr
Please press Enter to activate this console.
hash               odhcp6c            traceroute
basename           head               odhcpd             traceroute6
bg                 hexdump            odhcpd-update      trap
board_detect       history            opkg               true
brctl              hostapd            opkg-key           type
break              hotplug-call       passwd             ubiattach
busybox            htop               pgrep              ubiblock
cat                hwclock            pidof              ubicrc32
cd                 id                 ping               ubidetach
chdir              ifconfig           ping6              ubiformat
chgrp              ifdown             pivot_root         ubimkvol
chmod              ifstatus           poweroff           ubinfo
chown              ifup               pppd               ubinize
chroot             init               printf             ubirename
clear              insmod             procd              ubirmvol
cmp                ip                 ps                 ubroot@OpenWrt:~#                                                                                                                                                                               ubirsvol
irsvol
command            ubirsvol: error!: UBI device name was not specified (use -h f                                                                                                                                                             or help)
root@OpenWrt:~# command            ipcalc.sh          pwd                ubiupda
tevol
l
config_generate    IP=0.0.0.0
NETMASK=0.0.0.0
BROADCAST=255.255.255.255
NETWORK=0.0.0.0
PREFIX=0
root@OpenWrt:~# config_generate    irqbalance         px5g               ubus
irqbalance         px5g               ubus
continue           root@OpenWrt:~# continue           iw                 read                                                                                                                                                                            ubusd
-ash: continue: Illegal number: iw
root@OpenWrt:~# cp                 iwinfo             readlink           ucc
            cp: can't stat 'iwinfo': No such file or directory
cp: can't stat 'readlink': No such file or directory
root@OpenWrt:~# crond              jffs2mark          readonly           uci
       root@OpenWrt:~# crontab            jffs2reset         reboot                                                                                                                                                                          uclient
-fetch
jffs2reset         reboot             uclient-fetch
cut                BusyBox v1.36.1 (2024-03-22 22:09:42 UTC) multi-call binary.

Usage: crontab [-c DIR] [-u USER] [-ler]|[FILE]

        -c      Crontab directory
        -u      User
        -l      List crontab
        -e      Edit crontab
        -r      Delete crontab
        FILE    Replace crontab by FILE ('-': stdin)
root@OpenWrt:~# cut                jobs               reload_config      ucode
cut: expected a list of bytes, characters, or fields
root@OpenWrt:~# date               jshn               reset              udevtri
gger
          BusyBox v1.36.1 (2024-03-22 22:09:42 UTC) multi-call binary.

Usage: date [OPTIONS] [+FMT] [[-s] TIME]

Display time (using +FMT), or set time

        -u              Work in UTC (don't convert to local time)
        [-s] TIME       Set time to TIME
        -d TIME         Display TIME, not 'now'
        -D FMT          FMT (strptime format) for -s/-d TIME conversion
        -r FILE         Display last modification time of FILE
        -R              Output RFC-2822 date
        -I[SPEC]        Output ISO-8601 date
                        SPEC=date (default), hours, minutes, seconds or ns

Recognized TIME formats:
        @seconds_since_1970
        hh:mm[:ss]
        [YYYY.]MM.DD-hh:mm[:ss]
        YYYY-MM-DD hh:mm[:ss]
        [[[[[YY]YY]MM]DD]hh]mm[.ss]
root@OpenWrt:~# dbclient           jsonfilter         resize             udhcpc

dbclient: Connection to root@jsonfilter:22 exited: Connect failed: Error resolvi                                                                                                                                                             ng 'jsonfilter' port '22'. Name does not resolve
root@OpenWrt:~# dd                 kill               return             uhttpd
vstatus          BusyBox v1.36.1 (2024-03-22 22:09:42 UTC) multi-call binary.

Usage: dd [if=FILE] [of=FILE] [ibs=N obs=N/bs=N] [count=N] [skip=N] [seek=N]
        [conv=notrunc|noerror|sync|fsync]
        [iflag=skip_bytes|count_bytes|fullblock|direct] [oflag=seek_bytes|append                                                                                                                                                             |direct]

Copy a file with converting and formatting

        if=FILE         Read from FILE instead of stdin
        of=FILE         Write to FILE instead of stdout
        bs=N            Read and write N bytes at a time
        ibs=N           Read N bytes at a time
        obs=N           Write N bytes at a time
        count=N         Copy only N input blocks
        skip=N          Skip N input blocks
        seek=N          Skip N output blocks
        conv=notrunc    Don't truncate output file
        conv=noerror    Continue after read errors
        conv=sync       Pad blocks with zeros
        conv=fsync      Physically write data out before finishing
        conv=swab       Swap every pair of bytes
        iflag=skip_bytes        skip=N is in bytes
        iflag=count_bytes       count=N is in bytes
        oflag=seek_bytes        seek=N is in bytes
        iflag=direct    O_DIRECT input
        oflag=direct    O_DIRECT output
        iflag=fullblock Read full blocks
        oflag=append    Open output in append mode

N may be suffixed by c (1), w (2), b (512), kB (1000), k (1024), MB, M, GB, G
root@OpenWrt:~# devstatus          killall            rm                 ujail
f                 Command failed: Invalid argument
root@OpenWrt:~# df                 kmodloader         rmdir              ulimit
 Filesystem           1K-blocks      Used Available Use% Mounted on
df: kmodloader: can't find mount point
df: rmdir: can't find mount point
df: ulimit: can't find mount point
root@OpenWrt:~# dirname            ldd                rmmod              umask
   BusyBox v1.36.1 (2024-03-22 22:09:42 UTC) multi-call binary.

Usage: dirname FILENAME

Strip non-directory suffix from FILENAME
root@OpenWrt:~# dmesg              led.sh             route              umount
asq            [    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.15.150 (builder@buildhost) (arm-openwrt-linux-mus                                                                                                                                                             lgnueabi-gcc (OpenWrt GCC 12.3.0 r23809-234f1a2efa) 12.3.0, GNU ld (GNU Binutils                                                                                                                                                             ) 2.40.0) #0 SMP Fri Mar 22 22:09:42 2024
[    0.000000] CPU: ARMv7 Processor [414fc091] revision 1 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructio                                                                                                                                                             n cache
[    0.000000] OF: fdt: Machine model: Linksys WRT32X
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000001fffffff]
[    0.000000]   HighMem  empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000001fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001fffffff]
[    0.000000] percpu: Embedded 12 pages/cpu s17420 r8192 d23540 u49152
[    0.000000] pcpu-alloc: s17420 r8192 d23540 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129920
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mtdblock6
[    0.000000] Bootloader command line (ignored): console= root=/dev/mtdblock6
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, l                                                                                                                                                             inear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, li                                                                                                                                                             near)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 506920K/524288K available (8192K kernel code, 644K rwdata                                                                                                                                                             , 1164K rodata, 1024K init, 245K bss, 17368K reserved, 0K cma-reserved, 0K highm                                                                                                                                                             em)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jif                                                                                                                                                             fies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] L2C: DT/platform modifies aux control register: 0x06070000 -> 0x1                                                                                                                                                             6070000
[    0.000000] L2C-310 enabling early BRESP for Cortex-A9
[    0.000000] L2C-310 full line of zeros enabled for Cortex-A9
[    0.000000] L2C-310 D prefetch enabled, offset 1 lines
[    0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled
[    0.000000] L2C-310 Coherent cache controller enabled, 16 ways, 1024 kB
[    0.000000] L2C-310 Coherent: CACHE_ID 0x410054c9, AUX_CTRL 0x56070001
[    0.000000] sched_clock: 64 bits at 933MHz, resolution 1ns, wraps every 43980                                                                                                                                                             46511103ns
[    0.000015] clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycle                                                                                                                                                             s: 0x1ae5b571769, max_idle_ns: 881590513431 ns
[    0.000029] Switching to timer-based delay loop, resolution 1ns
[    0.000135] Ignoring duplicate/late registration of read_current_timer delay
[    0.000140] clocksource: armada_370_xp_clocksource: mask: 0xffffffff max_cycl                                                                                                                                                             es: 0xffffffff, max_idle_ns: 76450417870 ns
[    0.000267] Calibrating delay loop (skipped), value calculated using timer fr                                                                                                                                                             equency.. 1866.00 BogoMIPS (lpj=9330000)
[    0.000275] CPU: Testing write buffer coherency: ok
[    0.000289] CPU0: Spectre v2: using BPIALL workaround
[    0.000293] pid_max: default: 32768 minimum: 301
[    0.000567] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linea                                                                                                                                                             r)
[    0.000574] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes,                                                                                                                                                              linear)
[    0.001178] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.001432] Setting up static identity map for 0x100000 - 0x100060
[    0.001496] mvebu-soc-id: MVEBU SoC ID=0x6820, Rev=0x4
[    0.001562] mvebu-pmsu: Initializing Power Management Service Unit
[    0.001619] rcu: Hierarchical SRCU implementation.
[    0.001740] smp: Bringing up secondary CPUs ...
[    0.001883] Booting CPU 1
[    0.001998] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.002003] CPU1: Spectre v2: using BPIALL workaround
[    0.002049] smp: Brought up 1 node, 2 CPUs
[    0.002054] SMP: Total of 2 processors activated (3732.00 BogoMIPS).
[    0.002059] CPU: All CPU(s) started in SVC mode.
[    0.003808] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9                                                                                                                                                              rev 4
[    0.003851] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma                                                                                                                                                             x_idle_ns: 19112604462750000 ns
[    0.003860] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.003958] pinctrl core: initialized pinctrl subsystem
[    0.004496] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.004917] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.005302] thermal_sys: Registered thermal governor 'step_wise'
[    0.005413] cpuidle: using governor ladder
[    0.005518] mvebu-pmsu: CPU hotplug support is currently broken on Armada 38x                                                                                                                                                             : disabling
[    0.005524] mvebu-pmsu: CPU idle is currently broken on Armada 38x: disabling
[    0.011838] cryptd: max_cpu_qlen set to 1000
[    0.012757] SCSI subsystem initialized
[    0.012823] libata version 3.00 loaded.
[    0.012900] usbcore: registered new interface driver usbfs
[    0.012917] usbcore: registered new interface driver hub
[    0.012932] usbcore: registered new device driver usb
[    0.013490] clocksource: Switched to clocksource arm_global_timer
[    0.013930] NET: Registered PF_INET protocol family
[    0.013999] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear                                                                                                                                                             )
[    0.014314] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096                                                                                                                                                              bytes, linear)
[    0.014328] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes,                                                                                                                                                              linear)
[    0.014334] TCP established hash table entries: 4096 (order: 2, 16384 bytes,                                                                                                                                                              linear)
[    0.014354] TCP bind hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.014383] TCP: Hash tables configured (established 4096 bind 4096)
[    0.014421] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.014438] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.014533] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.014557] PCI: CLS 0 bytes, default 64
[    0.015803] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.017871] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.017878] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORIT                                                                                                                                                             Y) (c) 2001-2006 Red Hat, Inc.
[    0.018460] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2                                                                                                                                                             50)
[    0.019519] armada-38x-pinctrl f1018000.pinctrl: registered pinctrl driver
[    0.019939] debugfs: Directory 'f1018100.gpio' with parent 'regmap' already p                                                                                                                                                             resent!
[    0.020233] debugfs: Directory 'f1018140.gpio' with parent 'regmap' already p                                                                                                                                                             resent!
[    0.020446] mvebu-pcie soc:pcie: host bridge /soc/pcie ranges:
[    0.020468] mvebu-pcie soc:pcie:      MEM 0x00f1080000..0x00f1081fff -> 0x000                                                                                                                                                             0080000
[    0.020482] mvebu-pcie soc:pcie:      MEM 0x00f1040000..0x00f1041fff -> 0x000                                                                                                                                                             0040000
[    0.020494] mvebu-pcie soc:pcie:      MEM 0x00f1044000..0x00f1045fff -> 0x000                                                                                                                                                             0044000
[    0.020504] mvebu-pcie soc:pcie:      MEM 0x00f1048000..0x00f1049fff -> 0x000                                                                                                                                                             0048000
[    0.020514] mvebu-pcie soc:pcie:      MEM 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0100000000
[    0.020524] mvebu-pcie soc:pcie:       IO 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0100000000
[    0.020534] mvebu-pcie soc:pcie:      MEM 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0200000000
[    0.020544] mvebu-pcie soc:pcie:       IO 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0200000000
[    0.020553] mvebu-pcie soc:pcie:      MEM 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0300000000
[    0.020563] mvebu-pcie soc:pcie:       IO 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0300000000
[    0.020572] mvebu-pcie soc:pcie:      MEM 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0400000000
[    0.020579] mvebu-pcie soc:pcie:       IO 0xffffffffffffffff..0x00fffffffe ->                                                                                                                                                              0x0400000000
[    0.020700] mvebu-pcie soc:pcie: PCI host bridge to bus 0000:00
[    0.020708] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.020715] pci_bus 0000:00: root bus resource [mem 0xf1080000-0xf1081fff] (b                                                                                                                                                             us address [0x00080000-0x00081fff])
[    0.020721] pci_bus 0000:00: root bus resource [mem 0xf1040000-0xf1041fff] (b                                                                                                                                                             us address [0x00040000-0x00041fff])
[    0.020726] pci_bus 0000:00: root bus resource [mem 0xf1044000-0xf1045fff] (b                                                                                                                                                             us address [0x00044000-0x00045fff])
[    0.020732] pci_bus 0000:00: root bus resource [mem 0xf1048000-0xf1049fff] (b                                                                                                                                                             us address [0x00048000-0x00049fff])
[    0.020736] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xe7ffffff]
[    0.020741] pci_bus 0000:00: root bus resource [io  0x1000-0xeffff]
[    0.020813] pci 0000:00:01.0: [11ab:6820] type 01 class 0x060400
[    0.020947] pci 0000:00:02.0: [11ab:6820] type 01 class 0x060400
[    0.021611] PCI: bus0: Fast back to back transfers disabled
[    0.021618] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), rec                                                                                                                                                             onfiguring
[    0.021626] pci 0000:00:02.0: bridge configuration invalid ([bus 00-00]), rec                                                                                                                                                             onfiguring
[    0.021685] pci 0000:01:00.0: [11ab:2b40] type 00 class 0x020000
[    0.021702] pci 0000:01:00.0: reg 0x10: [mem 0x40000000-0x401fffff 64bit pref                                                                                                                                                             ]
[    0.021715] pci 0000:01:00.0: reg 0x18: [mem 0x40200000-0x402fffff 64bit pref                                                                                                                                                             ]
[    0.021781] pci 0000:01:00.0: supports D1 D2
[    0.021785] pci 0000:01:00.0: PME# supported from D0 D1 D3hot D3cold
[    0.022480] PCI: bus1: Fast back to back transfers disabled
[    0.022486] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    0.022553] pci 0000:02:00.0: [11ab:2b40] type 00 class 0x020000
[    0.022574] pci 0000:02:00.0: reg 0x10: [mem 0x42000000-0x421fffff 64bit pref                                                                                                                                                             ]
[    0.022588] pci 0000:02:00.0: reg 0x18: [mem 0x42200000-0x422fffff 64bit pref                                                                                                                                                             ]
[    0.022677] pci 0000:02:00.0: supports D1 D2
[    0.022681] pci 0000:02:00.0: PME# supported from D0 D1 D3hot D3cold
[    0.022706] pci 0000:02:00.0: 2.000 Gb/s available PCIe bandwidth, limited by                                                                                                                                                              2.5 GT/s PCIe x1 link at 0000:00:02.0 (capable of 4.000 Gb/s with 5.0 GT/s PCIe                                                                                                                                                              x1 link)