Netgear R7800 exploration (IPQ8065, QCA9984)

How do I make this into a nice block of text as in your post?

You select the text block, and mark it as "preformatted text" with the button "</>" (or by entering 4 spaces into each line manually, or) and you also need to have one empty line before the block (and after it).

Ahh.. you figured it out.

Ok, thx! Post updated.

But looks like you were right. There is no interrupt for those DSA interfaces.

That is actually quite logical, as the switch handles the work without CPU. But I would have thought that there would still be some interrupt for it.

@dissent1 has maybe thought more about this.

My thinking exactly :slight_smile:

You are probably building off my tree that has a custom script to rearrange interrupts for eth0, eth1, wifi0 and wifi1.
DSA ATM supports only 1 cpu port. The main port for that - port0 of the switch that is connected to eth0. The 2nd cpu port of the switch (port6) that's hard wired to eth1 is not getting up thus eth1 is not getting up as well. Because eth1 is not up there's no interrupt getting assigned for that.

That's normal until DSA supports multiple cpu ports.

So either don't bother about that error in the log or remove the following string in your script

Thank you! I will ignore the error for now :grinning:

@dissent1 What about irqbalance in this situation? It is not useful?

The only con is that only 1 cpu port is used

I wouldn't suggest using irqbalance ever as it messes with interrupts and increases cache misses drastically to the level that you don't have improved throughput at all or even face a degradation

Clear, tnx!

Hi folks,

I got myself a refurb R7800 and planning to use it as my main router and OpenVPN server connecting to other sites.

I managed to build a working firmware image from the lede-17.01 branch with the following changes:

  1. Shortcut-fe kernel module
  2. OpenSSL library compile time -O3 optimisation. I've also enabled the OpenSSL hardware support, but not the Crypto Engine support (should I?)

There's another configuration that I still can't figure out, which is to configure one of my R7800 port to enable hardware switch VLAN PCP bits. The reason I would like this is that my ISP' IPTV service requires that all network packets sent to be VLAN tagged with the PCP bits set to video (i.e. PCP 4). Although I could do it with standard configuration of VLAN with all egress packet tagged, I would prefer not to burden the router's CPU to do lots of works just to update the PCP bits of all VLAN packets. The CPU cycles should be used for OpenVPN and OpenSSL computation.

The 'swconfig' utility doesn't seem to allow me to do what I need.

I have Broadcom routers which I hacked the switch-robo driver in DD-WRT to allow me to achieve what I needed. Do I have to also hack the lede's Atheros switch driver to do the same?

Would the experts here have any advice for me?

Thanks!

@dissent1 I've pulled in your DSA patch and built it for my TP-Link C2600 (ipq8064). After adjusting the network configuration for the new interfaces it seems to work great.
I'm using collectd to monitor the device and I noticed that previously without this patch the second CPU core had a constant 19-20% system load, but with the DSA patch applied this constant load disappeared.

1 Like

ĀæIn this situation or in any situation?

Any, just balance irqs manually with a startup script

Useless. There's no hw crypto support for ipq806x.

I guess there's no support for that in ar8xxx switch driver. But you can find a datasheet for our switch ar8337 and add the corresponding code :slight_smile:

I’ll hack around and see if I can cook up something. Will post back if I can get it to work :grimacing:

Are there any guides on how to balance IRQ’s manually with a script?

But what do I actually get with setting up those affinity options manually?
Is it even recommended? I own TP-Link C2600.