Qualcommax NSS Build

I applied that patch as well on my build but after a few hours it still reoccured.

I suspect it's either SQM related or GRO. I've since enabled the disable_gro function in the ECM script to disable it for all interfaces. So far it's been stable last 18 hours.

@TomCruise, after hours of digging, I found the culprit, it's due to this recent commit:

date commit desc
2024-04-11 81b7e7d4a2 luci-app-sqm: upgrade uci-defaults for ucitrack handling to use json

As others stated, enabling from LuCI messes up loading of the SQM altogether. If you look at top you'll also procd and ubusd going crazy.

Poking around at the ubus socket /var/run/ubus/ubus.sock, I saw it was looping over making the same calls:

ubus call service event '{"type":"config.change","data":{"package":"sqm"}}'

Anyways, the problem is upstream and I've opened a PR.

3 Likes

Can upload a patch?

UPDATE:

For SQM users, I added a new feature to use NSS shaping on more than one interface. The IFB interface is no longer hardcoded.

date commit desc
2024-05-02 d6bf377 sqm-scripts-nss: fix package layout
2024-05-02 9a2496d feat: multiple NSS managed ifbs + enhancements
2024-05-02 e0883dd nss-sqm: reorganize to standard package layout

Also, looks like QSDK has a new 12.5.r2 release targeting kernel 6.6. I see most of my patches to ecm, drv, and clients made it upstream, will be nice to clean out the patches/* directory. :slight_smile: Currently testing it against 6.6.30. Hopefully the UDP socket error is fixed.

Will push once 6.6.30 gets merged upstream.

15 Likes

Hi
Where can I find NSS builds for ipq40xx targets, such as GL.iNet GL-B1300? Thanks

I am also looking for such builds for Archer C6 v2 EU, I found builds based on 22.xx, are there builds on 23.xx?

I'm not aware of any projects using NSS based builds for ipq40xx. Doubt you'll find any.

I briefly attempted it with Orbi RBR50 from the NSS codebase I used for IPQ806x, but was not successful. The platforms were just too different (internal switch, NSS cores, etc). It's also an aging platform, like ipq806x.

It's either IPQ806x or this thread which is IPQ807x (I believe some folks are trying to get IPQ6018 since it's similar hardware).

1 Like

patches already backported into openwrt main 2f53985 and a5a941a

but like @qosmio said previously we need to disable gro

hey guys, using a snapshot on my mx4200V2.
original firmware got me 700 down and 600 up on wifi, openwrt gets me around 450 down and 350 up with packet steering, software and hardware offloading all on. with those 3 options off i was getting around 400 down and 100 up. im pretty sure the speed issues originate from there being no NSS support as said on the openwrt listing for the mx4200.

is it safe to use an NSS build on it and if so where do i get started? thanks

What was the kernel version targeted until now by the QSDK? It's only curiosity...

from to kernel
11.4.1.R1 12.4.r4 5.4
12.4.5 12.4.5.r5 6.1
12.5.r2 current 6.6

However their manifests are super confusing as AU_LINUX_QSDK_NHSS.QSDK.12.5.R2* point to clo/qsdk/oss/kernel/linux-ipq-5.4, not even 6.1. Guessing it's a buildbot that updates it, and they haven't uploaded a "clo/qsdk/oss/kernel/linux-ipq-6.6" repo yet.

1 Like

@rmandrad , @sppmaster , @anom3 since I don't have a board with 10G to verify it works on 301w, if you're brave enough, would you want to test out the latest SSDK from QSDK that target 6.6 natively?

It's running pretty smoothly for me, and actually getting zero build warnings. Also a lot fewer exceptions reported from NSS IFB (/sys/kernel/debug/qca-nss-drv/stats/igs).

2 Likes

NBG7815 also has an 10g port. I apply ssdk-12.5.r2.patch and the 10g is working well.

30 min. up time now. In a few hours i will inform again.

2 Likes

See: https://git.codelinaro.org/clo/qsdk/oss/lklm/qca-ssdk/-/commit/3d060f7ad70d087f6b0452abe79ab6d042e8cd53

yes all working fine on the qnap

2 Likes

All seems OK on my QNAP too. I've applied latest GRO commits from OpenWrt main and kernel 6.6.30. I didn't use the patch from @zxlhhyccc because I compiled yesterday.
One interesting finding for nlbwmon.
I've found out that for the last several days it started working but it was counting only the traffic for the new month. The previous month stats was empty. I don't know the reason for this but looks to me that it started working when the new month had started. Now after a new flash and reboot it doesn't count traffic for the current month again.

1 Like

Does this log prompt have any impact?

This is already part of the patch I posted in my gist.

I have these installed after applying the SSDK-12.5.r2.patch.
Date 2024.04.17 for SSDK switch driver seems OK.

What does the WiFi speed regression look like in your case?
I think that I cannot get max wifi speeds now too. Usual tests that I perform after every update. I used to get 1Gbps and now I reach ~700-800Mbps max but will do more tests to see if it is temporary.
Still unable to run wg-bench test though. Same error.

What part of the patch you released?

here: Qualcommax NSS Build - #2566 by qosmio

the gist mentioned in that post:

1 Like

From WIFI to LAN

actually, disabling just GRO should be sufficient. If I recall, GSO was only disabled on the physical WAN and LAN port in QSDK's boost_performance.sh.

For reference I'm able to max out my line speed over WiFi.

1 Like