Ipq806x NSS build (Netgear R7800 / TP-Link C2600 / Linksys EA8500)

its not required, but if you needed it, instruction on the 2nd post 4th point. Applicable for any nss build shared here.

Looks unrelated. Probably a temporary hiccup from the source servers.

reboot on c2600, 5.10 kernel

Not sure if this counts as a bug but I made my r7800 very unhappy with a startup config like this (see bolded)

tc qdisc add dev nssifb root handle 1: nsstbl rate 220000 burst 1Mb
tc qdisc add dev nssifb parent 1: handle 10: nssfq_codel limit 10240 flows 1024 quantum 1514 target 5ms interval 100ms set_default

tc qdisc add dev eth0 root handle 1: nsstbl rate 114000 burst 1Mb
tc qdisc add dev eth0 parent 1: handle 10: nssfq_codel limit 10240 flows 1024 quantum 1514 target 5ms interval 100ms set_default
exit 0

Made web browsing almost unusable. I'm guessing it was setting to 220,000 Mbit and going haywire. It wasn't clear from the first few posts that I had to use Mbit and not bits.

I also had some issues reaching line speed (250/15) with this build, but it could be a problem on my end.

I've yet to get 5.10 to work with my NBG6817 without random reboots within an hour or so. Logs don't give me anything unfortunately and I'm not connected to serial ports (yet) to be able to monitor... hopefully soon. Very curious what's causing my crashes considering hardware essentially identical to the R7800.

It should be 220Mbit (not 220000) and 114Mbit (not 114000). See if that helps. NSS fq codel will average “high B” / “low A” on most bufferbloat measures.

Most ipq806x devices can do cake at nearly that speed (normal openwrt, non-NSS build). Cake will give better latency if you are looking for peak performance at that ISP speed. I’d turn cake down to 160Mbit. Defer towards lower (maybe 150 or 140) - should find a sweet spot of consistent A+ bufferbloat for your connection. NSS hardware offloading is better suited to for 500+mbps isp connections to get max performance.

@SiXX - interesting. Let me know if you figure out any specifics or get any crash logs. Does the 21.02 build work well?

@ACwifidude Yep - 21.02 is perfect. As I've said in previous posts - it's 100% stable (set & forget) for me. I just use the build you compile... only thing I add in is Stubby. I don't use DDNS, Adblock, VPN, etc... I'm really a vanilla user with the exception of Stubby. That's what makes me so curious as to why 5.10 Master is so challenging for the Zyxel. Probably something small / silly... once I hopefully get around to getting Serial access - that should help a lot.

1 Like

@illumiN8i @th3voic3 I just swapped over to Master 5.10 on an R7800 I manage - and can confirm stubby is NOT available in opkg. Weird.

For anyone interested: stubby is back in Master

3 Likes

Yep I've installed stubby via opkg and I've upgraded the last NSS master to the last kernel (5.10.91) and everything is working

2 Likes

@ACwifidude I loaded 5.10 again on the Zyxel today... just to tinker some more. Question - does Kernel 5.10 do something different to balance the load across the two primary cores -vs- 5.4? When I run the command "cat /proc/interrupts/" - it appears to have a lot more NSS activity on CPU1 versus CPU0 when compared to 5.4 Kernel. Luci Statistics - Processor page shows a lot more balance across the two as well. Global Packet Steering and irqbalance have been enabled on both builds - so no difference there. When I run a wireless speedtest - on 5.4 only CPU0 would load up and show the IRQ spike in luci stats... whereas in 5.10 both will load up. On 5.4 with little-to-no load, I'd see CPU0 hovering between 6-10% and CPU1 around 2-3% constant... whereas on 5.10 I see both hovering in the 3-6% range rather equally.

Here's a log from 5.10. Lines 39 and 41 are the curious ones to me as they only appear to be operating on CPU1 after initial boot.

root@OpenWrt:~# cat /proc/interrupts
           CPU0       CPU1       
 24:      95342      59931     GIC-0  18 Edge      gp_timer
 26:       6332       7293     GIC-0  51 Edge      qcom_rpm_ack
 27:          0          0     GIC-0  53 Edge      qcom_rpm_err
 28:          0          0     GIC-0  54 Edge      qcom_rpm_wakeup
 38:          0          0     GIC-0 202 Level     adm_dma
 39:     126989    1174506     GIC-0 245 Level     nss
 40:      98777         28     GIC-0 264 Level     nss_queue1
 41:     126140     960701     GIC-0 246 Level     nss
 42:          0          0     GIC-0 265 Level     nss_queue1
 43:       8917        154     GIC-0 130 Level     bam_dma
 44:          0          0     GIC-0 128 Level     bam_dma
 45:      27618        462     GIC-0 136 Level     mmci-pl18x (cmd)
 46:          0          0     GIC-0 210 Edge      900000.clock-controller:thermal-sensor@900000
 48:          0          0   PCI-MSI   0 Edge      aerdrv
 50:          0          0   PCI-MSI 134217728 Edge      aerdrv
 51:         10          0     GIC-0 184 Level     msm_serial0
 52:    3154405          0     GIC-0 187 Level     1a280000.spi
 53:          1          0   msmgpio  53 Edge      keys
 54:          0          0   msmgpio  54 Edge      keys
 55:          0          0   msmgpio  65 Edge      keys
 56:          0          0     GIC-0 142 Level     xhci-hcd:usb1
 57:          0          0     GIC-0 237 Level     xhci-hcd:usb3
 58:     314405          0   PCI-MSI 524288 Edge      ath10k_pci
 59:     127488          0   PCI-MSI 134742016 Edge      ath10k_pci
IPI0:          0          0  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:       2802       2832  Rescheduling interrupts
IPI3:      59725     198283  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:      48412      27634  IRQ work interrupts
IPI6:          0          0  completion interrupts
Err:          0

Still couldn't pin down the random reboots on 5.10 w/ the Zyxel. Kept doing it today... first one about an hour after initial setup... second about the same... but then it a third after approx 15min... fourth about 35min later. Family got home, so I reverted back to NSS Stable 21.02... otherwise I'd have an unhappy family at me. haha.

For comparison - here's a snap of the interrupts on 5.4. Again - this is with IRQBalance and Packet Steering enabled. Big difference between 5.10 and 5.4.

root@OpenWrt:~# cat /proc/interrupts
           CPU0       CPU1       
 16:      31304      23804     GIC-0  18 Edge      gp_timer
 18:       3637          0     GIC-0  51 Edge      qcom_rpm_ack
 19:          0          0     GIC-0  53 Edge      qcom_rpm_err
 20:          0          0     GIC-0  54 Edge      qcom_rpm_wakeup
 26:          0          0     GIC-0 210 Edge      tsens_interrupt
 29:          0          0     GIC-0 202 Level     adm_dma
 32:     487356          0     GIC-0 245 Level     nss
 33:          0      57740     GIC-0 264 Level     nss_queue1
 34:     396357          0     GIC-0 246 Level     nss
 35:          0          0     GIC-0 265 Level     nss_queue1
 36:       8354          0     GIC-0 130 Level     bam_dma
 37:          0          0     GIC-0 128 Level     bam_dma
 38:      28237          0     GIC-0 136 Level     mmci-pl18x (cmd)
 40:          0          0   PCI-MSI   0 Edge      aerdrv
 42:          0          0   PCI-MSI 134217728 Edge      aerdrv
 43:         12          0     GIC-0 184 Level     msm_serial0
 44:     259784          0     GIC-0 187 Level     1a280000.spi
 45:          1          0   msmgpio  53 Edge      keys
 46:          2          0   msmgpio  54 Edge      keys
 47:          2          0   msmgpio  65 Edge      keys
 48:          0          0     GIC-0 142 Level     xhci-hcd:usb1
 49:          0          0     GIC-0 237 Level     xhci-hcd:usb3
 50:     144466          0   PCI-MSI 524288 Edge      ath10k_pci
 51:      47993          0   PCI-MSI 134742016 Edge      ath10k_pci
IPI0:          0          0  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:      11257      62387  Rescheduling interrupts
IPI3:       2288       5063  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:      12354      12044  IRQ work interrupts
IPI6:          0          0  completion interrupts
Err:          0

tp link c2600 is rebooting too, 4-5x per day

Just for comparison... here's an R7800 I support as well on your NSS Master 5.10. Interrupts look quite a bit different from the Zyxel's I posted earlier. Very strange. Luci Stats - Processor looks more normal to me on the R7800 too, with more load on CPU0 -vs- CPU1. Wondering if something within the Zyxel is causing affinities to be bugged. Would definitely explain the random reboots. @ACwifidude - any thoughts?

root@OpenWrt:~# cat /proc/interrupts
           CPU0       CPU1       
 24:      59405      43753     GIC-0  18 Edge      gp_timer
 26:       9912          0     GIC-0  51 Edge      qcom_rpm_ack
 27:          0          0     GIC-0  53 Edge      qcom_rpm_err
 28:          0          0     GIC-0  54 Edge      qcom_rpm_wakeup
 34:          0          0     GIC-0 241 Level     ahci[29000000.sata]
 39:     782505      78232     GIC-0 202 Level     adm_dma
 40:     557765          0     GIC-0 245 Level     nss
 41:          0      27582     GIC-0 264 Level     nss_queue1
 42:     478622          0     GIC-0 246 Level     nss
 43:          0          0     GIC-0 265 Level     nss_queue1
 44:          0          0     GIC-0 130 Level     bam_dma
 45:          0          0     GIC-0 128 Level     bam_dma
 46:          0          0     GIC-0 210 Edge      900000.clock-controller:thermal-sensor@900000
 48:          0          0   PCI-MSI   0 Edge      aerdrv
 50:          0          0   PCI-MSI 134217728 Edge      aerdrv
 51:         15          0     GIC-0 184 Level     msm_serial0
 52:          0          0   msmgpio   6 Edge      keys
 53:          0          0   msmgpio  54 Edge      keys
 54:          0          0   msmgpio  65 Edge      keys
 55:          0          0     GIC-0 142 Level     xhci-hcd:usb1
 56:          0          0     GIC-0 237 Level     xhci-hcd:usb3
 57:     127396          0   PCI-MSI 524288 Edge      ath10k_pci
 58:      54953          0   PCI-MSI 134742016 Edge      ath10k_pci
IPI0:          0          0  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:       3790       4314  Rescheduling interrupts
IPI3:      33793      61411  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:      17051      10593  IRQ work interrupts
IPI6:          0          0  completion interrupts
Err:          0

sorry guys, i feel a little bit confused :slight_smile:
all these stability issues are for master on 5.10 "in general" or only for some targets?
is R7800 master stable?
Thanks

1 Like

Interesting. I’ll look in to it more this weekend. R7800 and zyxel have the exact same .dts settings so there must be something else.

@pattagghiu r7800 is working well with 5.10. The rest seem to be having issues. 21.02 is working well across the board.

@ACwifidude If there's anything I can do to assist you - let me know. I may not have the same level as ability as you and others, but I can certainly follow instructions really well! :laughing:

@pattagghiu NSS 21.02 is rock solid stable on all my devices. NSS Master 5.10 is stable on the R7800 only... struggling (work in progress) on my Zyxel.

ok, i'll try to build a new master 5.10, since i have some problems with 5GHz wifi with my NSS 21.02..
Thanks

Out of curiosity - what kind of issues are you having?

basically, i found out that my router is no longer able to take up the 5GHz bandwidth at all and if i try to take it up manually, the router reboots.
i haven't looked very deeply into this, but i assume it's a problem of the specific build since i used for ages the 5GHz band with the very same setup (and i'm using plain old ath10k drivers and firmware)

That's what i see, i have no error in kernel log (i know, i'd have to look at the system log..)