What's new

Custom firmware build for R7800 v. 1.0.2.35SF

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Voxel

Part of the Furniture
Continuation of

https://www.snbforums.com/threads/custom-firmware-build-for-r7800.36859/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-22sf.37222/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-23sf-v-1-0-2-24sf.37477/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-25sf-v-1-0-2-29sf.38032/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-30sf.38366/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-31sf.39142/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-32sf.39657/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-33sf.40198/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-34sf.40523/

New version of my custom firmware build: 1.0.2.35SF.

Changes (vs 1.0.2.34SF):

1. ReadyCLOUD GUI access problem is fixed (problem reported by janthony6).
2. expat package is upgraded 2.2.2->2.2.3.
3. e2fsprogs package is upgraded 1.43.4->1.43.5.
4. irqbalance-1.2.0 package is added.
5. OpenVPN clinet startup script is optimized.
6. Kernel sources are synchronized with latest stock firmware.
7. dnscrypt-resolvers.csv is updated.
8. Host tools: one component is upgraded.
9. Some other changes.

The link is:

https://www.voxel-firmware.com (thanks to vladlenas for his help with hosting).

No reset is needed to upgrade from my previous versions.


Voxel.
 
Last edited:
Thanks for your work. As a normal/average user of your FW, could you explain briefly what points 2,3,4 are? expat, e2fsprogs, irqbalance? Not sure if being a basic user of the FW, I use these things, or if they are part of the main FW.

Thanks
 
Thanks for your work. As a normal/average user of your FW, could you explain briefly what points 2,3,4 are? expat, e2fsprogs, irqbalance? Not sure if being a basic user of the FW, I use these things, or if they are part of the main FW.

Thanks

Stock firmware uses a lot of GPL packages from OpenWRT. Mainly from OpenWRT AA (Attitude Adjustment, 2013). One of my goals is upgrading these old packages by their most recent version because of bug correction, increasing performance and functionality, removing vulnerability, security fixes etc. And to keep them up-to-date. For example OpenSSL version 0.9.8 used initially for R7800 in stock firmware (and it is still used for R9000) does not support asm acceleration, so it is why OpenVPN (also renewed) is faster in my version (yeah, plus some my cookies after brainstorming ;), not just stupid renew). I would not be able to accelerate OpenVPN keeping old version of OpenSSL.

So this log is just my changes.

expat (2.2.3 in my version vs 2.0.1 in stock) is stream-oriented XML parsing library used internally in firmware.
Changelog for this version:

https://github.com/libexpat/libexpat/blob/R_2_2_3/expat/Changes
(check if you have a time what bug/problems are corrected/resolved)

e2fsprogs (1.43.5 in my version vs 1.42.4 in stock) provides the filesystem utilities for use with the Linux native filesystems ext2/3/4 (make ext2/3/4 filesystem, check it for errors etc). Changelog for this package:

http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.43.5
(You can check what security holes are closed)

irqbalance is a bit different story, it is absent at all in stock. The goal of its inclusion is to increase performance.

https://linux.die.net/man/1/irqbalance

Description

The purpose of irqbalance is distribute hardware interrupts across processors on a multiprocessor system in order to increase performance.


Voxel.
 
Thanks for the irqbalance, thanks for not forgetting :))).
 
Thanks for the irqbalance, thanks for not forgetting :))).

Yes, it was included after your request. I am not sure in significant increase of performance, but at least I tested its stability (11 days of uptime, w/o reboot).

Voxel.
 
Hi Voxel,

After long time tried this firmware. As stock latest was only stable for 2-3 days. When support reverted. They said the reason for QOS failure was due to a client which is another router in the network which is doing port scanning which connects PC and NAS wired.

Does this makes sense a port scanning can cause the QOS to crash.

For now the 35F is more stable and faster even on VPN via PC client. Not router confirgured client. I get close to 90% average arround 60% of ISP Speed still way to go.
 
Yes they are not solving the problem yet. Also the log function of router never clearly says why and when the QOS is rebooted or crashed .

Its now visible once this crashes all the wifi connected devices losses internet abrubtly. All client need to disconnect and conenct to get internet. And the priority being reset it will be unbalance speed . though much visible

I believe the log should include process monitoring and send if any crashes abruptly

NETGEAR_SUPPORT.png
 
Yes they are not solving the problem yet. Also the log function of router never clearly says why and when the QOS is rebooted or crashed .

Its now visible once this crashes all the wifi connected devices losses internet abrubtly. All client need to disconnect and conenct to get internet. And the priority being reset it will be unbalance speed . though much visible

I believe the log should include process monitoring and send if any crashes abruptly

NETGEAR_SUPPORT.png

You got previously workable environment with previous version of QoS. Why not to do the same (install previous QoS).?

Voxel.
 
Yes the v2.0 wont get broken easily. But the Netgear team wants to know why it is broken in v4.0 and they wanted to update and show the same. Which i did live remote session. They themselfs downloadaed the logs and reverted after weeks saying that my router which connects the PC and NAS is the culprit which seems to do port scanning. Which could be reason for crashing the QOS.


I am going to do next time if it is broken by chance in current firmware 35F will share the log to you and if require a remote login to see yourself if it is same for you or only i am seeing it wrong way,
 
Hi Voxel, I'm having a few issues getting the oVPN Client to do it's thing.

Done the USB stuff etc, and the openVPN client section in the VPN area has appeared, but alas, doesn't seem to be functioning. I've used the provided .ovpn file etc from the provider, but nothing is working. Do I still have to check the enable openVPN services?

Simple stuff I know, just not quite as simple without the GUI you get in DD/OpenWRT, just want to keep the HW accelerationg if possible.
 
Hi Voxel, I'm having a few issues getting the oVPN Client to do it's thing.

Done the USB stuff etc, and the openVPN client section in the VPN area has appeared, but alas, doesn't seem to be functioning. I've used the provided .ovpn file etc from the provider, but nothing is working. Do I still have to check the enable openVPN services?

Simple stuff I know, just not quite as simple without the GUI you get in DD/OpenWRT, just want to keep the HW accelerationg if possible.
Hi,
There could be several problems, like absent username/password in your ovpn or incorrect references to CA/CRT/KEY if any.

Try to follow the instruction in myopenrouter (it is for R9000, but the same is for R7800):

https://www.myopenrouter.com/article/how-set-openvpn-client-netgear-r9000-voxels-firmware

and if again problems, check the log file, from telnet console run:
Code:
cat /var/log/openvpn-client.log | more

P.S. I'll be absent for some time (up to 10 days), so maybe somebody experienced with Linux and who uses OpenVPN client could help you.

Voxel.
 
Hey Voxel! Glad you’re still on this device!

My concern is about irqbalance. It provides a pretty questionable effect.
It polls interrupts counters and decides to switch certain interrupt cpu affinity to a different core.
Because irqbalance does it pretty often it increases cache misses for data that is already being transferred to the core that irqbalance switches the process from.
This may lead to a result that neglects positive effect of spreading interrupts between cores. Besides irqbalance is not aware that some interrupts depend on others (like Wi-Fi depends on pci, at least in lede) and adm-dma interrupts I wouldn’t touch at all. So I think it’s better to remove irqbalance.
What I suggest, is to use a script that will spread needed interrupts at startup (you need to decide what to spread). I have one that I use in lede https://github.com/dissent1/r7800/b...pq806x/base-files/etc/init.d/set_cpu_affinity
You need to adjust interrupt names to conform stock fw layout. Or you can borrow it from QSDK and adjust the board name and add needed interrupts
https://source.codeaurora.org/quic/...ib/update_smp_affinity.sh?h=release/endive_cc

Only viable options you have is to spread Ethernet, wifi and usb.
But take into account that most network traffic is offloaded by NSS engines thus reliefing the cpu, so the effect of spreading interrupts is not as high as for lede. Besides there’s qca-rfs (like linux RPS/RFS) that spreads network streams across cores already.
 
My concern is about irqbalance. It provides a pretty questionable effect.
It polls interrupts counters and decides to switch certain interrupt cpu affinity to a different core.

+1 I have actually held off on flashing this firmware/build because irqbalance was included. I don't think it's a fully baked tool yet.
 
WOW wonderfull built. I can see it runs cool. Was the IRQ tool keeps stable.

I never had a running time this long on any history of firmware.

its almost 9 days still up and running fine including QOS. I get 80+% of vpn speed . Still it pc based and still i get good speed.

Not just a normal use. I would have alteast did a traffic of more than 200 gig easily with no hicups at all.

R78_K_STATS.png


R78K.png
 
I'm on V1.0.2.33SF (not 35)...just wanted to mention that my R7800 has been up for almost a month now. The R7800 is being used as my main router, the Orbi is being used as an AP. Very reliable, and fast as well, although not using the wireless at this point *smile*.

Want to try this newer firmware (35), but haven't wanted to take my router down, it's working so well. I'll get there, though *smile*, maybe with 36. The irqbalance thing looks interesting.

Thanks!
 
Last edited:
Hi guys,
I'm sorry, out of my country now, very bad Internet. So briefly.
dissent: Yes, I know possible negative effect of irqbalance. It however does not occur here. Two weeks of uptime as a test, it works w/o touching wifi. First was on the first core, second on the second, even after two weeks.
Who wants to disable it, may run
/etc/init.d/irqbalance disable

Well, too bad Internet. Too problematic to type even this short message. I'll be back after week.

Voxel.
 
I'm on V1.0.2.33SF (not 35)...just wanted to mention that my R7800 has been up for almost a month now. The R7800 is being used as my main router, the Orbi is being used as an AP. Very reliable, and fast as well, although not using the wireless at this point *smile*.

Want to try this newer firmware (35), but haven't wanted to take my router down, it's working so well. I'll get there, though *smile*, maybe with 36. The irqbalance thing looks interesting.

Thanks!
36? Hmm. Check my downloads. ;)
Voxel.
 

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top