OpenWrt Forum Archive

Topic: Update on Linksys WRT1900AC support

The content of this topic has been archived between 16 Sep 2014 and 7 May 2018. Unfortunately there are posts – most likely complete pages – missing.

Hi, the 2.4gHz SSID just disappear (hidden in setting) but 5ghz keep working.  The 2.4ghz channel I am using (channel 4) is  somehow identifiable in wifi-Analyzer but just its SSID is not shown

This problem seems appear when I start use USB sd-card on the router.

Log:-
openwrt kern.err kernel: [42333.845342] ieee80211 phy1: cmd 0x801c=80211RadioControl timed out

Hardware:-
Model    Linksys WRT1900ACv2
Firmware Version    OpenWrt Chaos Calmer 15.05.1 / LuCI 15.05-142-gb6330a1 Release (git-15.363.78009-956be55)
Kernel Version    3.18.23

swrt-2016-11-10
---------------

You all probably anticipated it but for testing and for people to build their own oppinions I moved swrt to using DSA for now. What DSA means in simple terms, eth0 and eth1 are still visible but can be ignored. Instead there will be an interface named wan for the "internet" port and interfaces lan1, lan2, lan3 and lan4 for the lan ports.

There is a somwhat reduced wan to lan troughput on kernel before 4.9 (only 770Mbit) so nothing a casual user would be bothered about.

Since today mwlwifi is back in action again and the overlay mount regression was fixed upstream a while back. So 4.9 and next should be perfectly usable again, minus the random packages not yet ready for 4.9.

Beside the usual kernel bumps there is also some cleanup work due to several bits having been upstreamed. The first 12 patches are still pending merge. They are the exact same commits so git am will have no issue to drop them should they no longer be needed.

Add some changes to the accompaning files in swrt. If you used build_dist.bash before, you might want to use the --all option to build all packages for later installation or build testing as well.


* linux-4.8: bump to 4.8.6
* linux-4.9: bump to 4.9-rc4
* linux-next: bump to next-20161110
* use dsa instead of swconfig, drop patches, extra packages, and fixups, mark swconfig broken
* firewall: bump, to get the 5 required fixes and a couple bonus fixes Jo did throw in.
* drop libncurses, the build failure is due to htop finding the host install, clear htop bug, libncurses just hid it.
* mwlwifi-nocompat: bump to get the fix for 4.9 and next, also fixes the bug wrt CONFIG_THERMAL=m
* netfilter.mk: updates for next
* various updates to files in ./swrt

swrt-2016-11-10.tar.xz: https://gpldr.in/v/LN8Ur5qs6U/o6nT5hpVTmBdoBRh
sha256sum: 59281eccf90d1e325bfea87bcea9b06795c875914bdc2450499f023c9195a4eb


How to get the sources and apply the patches to a local branch:

git clone https://github.com/openwrt/openwrt.git
cd openwrt
git checkout -b swrt-2016-11-10 origin/master
git am --ignore-whitespace <path to patches>/*

so how does dsa work for traffic that doesn't leave the switch? (one switch port with several VLANs and other ports on one of the VLANs for example)

@Sera, do you build for users to be able to run your firmware? Currently I run Kaloz's build from Oct 13 for my WRT1900ACSv1 and it is very stable. But of course am always open to new builds.

@dlang

dsa isn't supposed to do unnecessary work but who knows. I haven't played a lot with it yet. Load still seems to high for the simple wan to lan test even in 4.9. Maybe we can get Chadster to share more of his experience with dsa and possible pitfalls.


@cybrnook2002

No binaries from me, though I have no issues with someone offering binaries based on this series. Anyway, for a prebuilt firmware image Kaloz builds would be my pick as well.

@sera Since I know you've done a substantial amount of work on kernels, how does one go about choosing the best kernel to use for their device?

(Last edited by JW0914 on 11 Nov 2016, 22:20)

Sorry but I think to be lost with this issue:

Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.928447] ieee80211 phy0: cmd 0x9125=BAStream timed out
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.933882] ieee80211 phy0: return code: 0x1125
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.938445] ieee80211 phy0: timeout: 0x1125
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.942655] ieee80211 phy0: destroy ba failed execution
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.093260] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.099384] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.103943] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.108142] ieee80211 phy0: failed execution
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.112429] wlan0: failed to remove key (0, cc:20:e8:05:b9:2e) from hardware (-5)
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.118772] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.124912] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.129460] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.133667] ieee80211 phy0: failed execution
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.137954] wlan0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-5)
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.145102] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.151276] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.155988] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.160196] ieee80211 phy0: failed execution
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.164494] wlan0: failed to set key (1, ff:ff:ff:ff:ff:ff) to hardware (-5)
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.172807] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.178983] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.183541] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.187745] ieee80211 phy0: failed execution
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.192033] wlan0: failed to remove key (0, a4:5e:60:e7:47:9d) from hardware (-5)
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.196933] ieee80211 phy0: cmd 0x9111=SetNewStation timed out
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.202957] ieee80211 phy0: return code: 0x1111
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.207512] ieee80211 phy0: timeout: 0x1111
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.211712] ieee80211 phy0: failed execution
Fri Nov 11 12:20:30 2016 daemon.info hostapd: wlan0: STA cc:20:e8:05:b9:2e IEEE 802.11: deauthenticated due to local deauth request

I didn't suffer in the latest images until this morning I installed:

LEDE Reboot r2154
Kernel 4.4.30
WRT1900ACS

I can replicate this one on demand, I just need to download via samba a large file sitting on a USB 3.0 HDD attached to the router.

Is there a patch that can be applied to the image or any workaround ?

Same test works just fine on:

Lede Reboot 1925
Kernel 4.4.24


Thanks for helping!

(Last edited by acarlo on 11 Nov 2016, 23:09)

Please paste code and log output within code brackets, not quote brackets

  • reason being: code brackets don't wrap lines, important in log output, but more importantly decrease the output font, and, after ~25 lines, uses a scrollable box

(Last edited by JW0914 on 11 Nov 2016, 23:02)

Just modified to use code instead than quote.

Might try: LEDE forum, bugs, wiki. But I have not seen anything amiss on r2152-k4.4.30 or r2154-k4.4.31, I know you're greatly relieved by that.

For those that like to play: this is interesting.

JW0914 wrote:

@sera Since I know you've done a substantial amount of work on kernels, how does one go about choosing the best kernel to use for their device?

There is no straight forward answers to such a question other than one that is still supported upstream and has all you need. The former is easy but the latter depends on you. If you want one that just reliably works 3.18 isn't a bad pick for this series. 4.9 which likely becomes the next long term stable has a shorter would be nice to have list though. A major component that is missing still is mwlwifi.

That reminds me, haven't seen anything wrt to upstreaming mwlwifi in quite a while. Is this off the table for the near future? Anyone any news on this?

JW0914 wrote:

@sera Since I know you've done a substantial amount of work on kernels, how does one go about choosing the best kernel to use for their device?

Every kernel release includes a lot of fixes and improvements.

Every kernel release also includes bugs/regressions.

The bottom line is that you use what works :-)

some people are comfortable using the latest release

some people only want to use a 'stable' release

some people won't use a kernel until it's been out a while

some people will only use the kernel packages that their distro (Fedora, Ubuntu, Debian, OpenWRT, LEDE) ship. All of the Distro kernels include patches that are not upstream and the final combination of code us unique to that distro.

Arguments can be made for every one of these :-)

Personally, I go one of two ways.

If I don't care that much, I just use what the distro provides.

If I'm going to compile my own (which I like to do), I will use kernel.org release kernels. I've run them in production since '97 and will very comfortably compare my system uptime to the RedHat and RedHat Enterprise systems that have been run by other teams in the companies that I have worked for. I like using the kernel.org kernels because if I do run into problems, I have found that the kernel mailing list is very responsive. If you run older kernels, or kernels only from your distro, your options for support are more limited. I've found the public lists far more responsive than the distros (including paid support), but only if you are running the current version and willing to compile/test fixes.

No matter what you end up selecting, you always need to have a plan to test what you are going to deploy in some sort of limited fashion before committing to it fully. Every single approach WILL leave you with dead/degraded systems at some point. It can be a release that works fine for millions of other people, but on your particular hardware/load/usage patter, it will be a problem.

@dlang
That is one of the best explanations I have read yet.
Thanks!
It all comes down to each their own. :-) Everybody has different wants or needs and it can be a fun ride if
you like to play.

Yep.

The same thing goes for the versions of all the other packages in the system.

What I tend to do is to run the distro version of most things, but if there are specific packages that are more significant to the system, I will frequently compile and run my own version of them so that I can run the latest upstream version.

This lets me take advantage of the latest performance improvements (and frequently catch regressions before they become too baked in), and easily get support from the package developers.

I will start off using the distro supplied version, but when things scale up to start hitting performance bottlenecks, or if I hit a bug, or need a feature that's in a newer version, I'll jump to the upstream version for that package. If they supply a pre-compiled binary for my distro, I will use the latest one of those, but if I run into a bug, I need to be able to compile my own binaries to test/apply the fixes, so I always figure out how to do that before jumping off the distro version.

Many people react to my approach in horror, but it's not that bad in practice, because there are usually very few packages that you care that much about. If I have a dozen packages across a few hundred machines, it's a lot. Usually it's only a handful.

Is there a way to display the CPU and Radio temp values in the luci interface?

Running Kaloz's CC image from Oct 13. Router is WRT1900ACSv1

Thanks in Advance to whomever can help.

(Last edited by cybrnook2002 on 12 Nov 2016, 17:32)

Hi all, first post just got my WRT1900ACS and successfully flashed OpenWRT and setup a SAMBA drive. I have some questions and hope someone can help. I've tried Googling and searching the forum before asking smile sorry if this has answered already or I've missed the answer in advance.

I have tried to setup a torrent box with a Raspberry Pi 2 and found out the speeds are not great because the USB controller and Ethernet controller share the same bus and the board. From what I've read this causes a bottleneck and speeds go up and down as both are trying access the same bus.

So my question is how is the performance using WRT1900ACS as a torrent box with a hard drive connected to the USB 3.0? Is the dual core chip and 512MB RAM enough to keep up with downloading a torrent while surfing the web and maybe stream a video at the same time?

And the final question is the same Raspberry Pi 2 is being used with Pi-Hole a DNS sink-hole program to block Ads. I've seen there is some similar application in OpenWRT how is the performance and is it comparable.

It would great to have everything working from WRT1900ACS but I'm thinking it might be asking a bit too much from it and performance is not going to great. Would great to get some opinions before I start installing and configuring only to find out it not powerful enough.

@sera

I'm trying to digest your changes in swrt and I have a question.  What does the @ge3.19 do in the following line?

package/kernel/linux/modules/netfilter.mk

+    $(LINUX_DIR)/net/netfilter/nf_nat_redirect.ko@ge3.19 \

Also can you comment on the impact of the bugs fixed in the netfilter.mk?  Corner cases only or major oversights, or only if using certain features?

Thanks for sharing the patch set.

@dlang

Covering that many aspects in so little words, you really have a sense for breaking down such things.

InkblotAdmirer wrote:

@sera

I'm trying to digest your changes in swrt and I have a question.  What does the @ge3.19 do in the following line?

package/kernel/linux/modules/netfilter.mk

+    $(LINUX_DIR)/net/netfilter/nf_nat_redirect.ko@ge3.19 \

"greater or equal 3.19", in OpenWrt this is one of KERNEL_PATCHVERs meanings (the one that prevents arbitrary kernel branchs). In swrt it's compared against LINUX_VERSION_CMP, which is essentially LINUX_VERSION_CODE upstream.

So for kernel before 3.19 this module doesn't need to exist for the build not to fail. On 3.19 it needs to exist and will be part of the module ipk.

InkblotAdmirer wrote:

Also can you comment on the impact of the bugs fixed in the netfilter.mk?  Corner cases only or major oversights, or only if using certain features?

Some bugs are about trying to install modules that were removed upstream even before 2.6.20, then some are listed as kernel modules even though they belong to iptables and vice versa, then there are instances where things doesen't end up in the document package, ie, make menuconfigs help text and the wiki are off (depending on perspective the code is off). At least two kernel config symbols ended up in the wrong package.

If you want to tackle this, I suggest you start with making the whole thing less graceful, ie fail the build on error instead and many will become visible right away. For now I still ponder if I should treat include/netfilter.mk as just another case of to clever for your own good.

InkblotAdmirer wrote:

Thanks for sharing the patch set.

You're welcome.

Hi all

I am migrating from Statistics to Netdata with my last build r2114.  Does anyone have any tips as to how to get lm-sensors, and CPU freq monitored via netdata? Tried a few options so far without success

Thanks

Phil-bkk wrote:

Hi all

I am migrating from Statistics to Netdata with my last build r2114.  Does anyone have any tips as to how to get lm-sensors, and CPU freq monitored via netdata? Tried a few options so far without success

Thanks

Netdata doesn't support sensors (yet). You're better off asking @diizzy on iRC as I transferred netdata package maintainership to him since I'm too busy with other OpenWRT related projects.

nitroshift

@sera & @dlang thanks for the in depth answers on kernels =]

acarlo wrote:

Sorry but I think to be lost with this issue:

Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.928447] ieee80211 phy0: cmd 0x9125=BAStream timed out
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.933882] ieee80211 phy0: return code: 0x1125
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.938445] ieee80211 phy0: timeout: 0x1125
Fri Nov 11 12:16:45 2016 kern.err kernel: [ 3412.942655] ieee80211 phy0: destroy ba failed execution
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.093260] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.099384] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.103943] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.108142] ieee80211 phy0: failed execution
Fri Nov 11 12:20:14 2016 kern.err kernel: [ 3622.112429] wlan0: failed to remove key (0, cc:20:e8:05:b9:2e) from hardware (-5)
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.118772] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.124912] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.129460] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.133667] ieee80211 phy0: failed execution
Fri Nov 11 12:20:18 2016 kern.err kernel: [ 3626.137954] wlan0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-5)
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.145102] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.151276] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.155988] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.160196] ieee80211 phy0: failed execution
Fri Nov 11 12:20:22 2016 kern.err kernel: [ 3630.164494] wlan0: failed to set key (1, ff:ff:ff:ff:ff:ff) to hardware (-5)
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.172807] ieee80211 phy0: cmd 0x9122=UpdateEncryption timed out
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.178983] ieee80211 phy0: return code: 0x1122
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.183541] ieee80211 phy0: timeout: 0x1122
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.187745] ieee80211 phy0: failed execution
Fri Nov 11 12:20:26 2016 kern.err kernel: [ 3634.192033] wlan0: failed to remove key (0, a4:5e:60:e7:47:9d) from hardware (-5)
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.196933] ieee80211 phy0: cmd 0x9111=SetNewStation timed out
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.202957] ieee80211 phy0: return code: 0x1111
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.207512] ieee80211 phy0: timeout: 0x1111
Fri Nov 11 12:20:30 2016 kern.err kernel: [ 3638.211712] ieee80211 phy0: failed execution
Fri Nov 11 12:20:30 2016 daemon.info hostapd: wlan0: STA cc:20:e8:05:b9:2e IEEE 802.11: deauthenticated due to local deauth request

I didn't suffer in the latest images until this morning I installed:

LEDE Reboot r2154
Kernel 4.4.30
WRT1900ACS

I can replicate this one on demand, I just need to download via samba a large file sitting on a USB 3.0 HDD attached to the router.

Is there a patch that can be applied to the image or any workaround ?

Same test works just fine on:

Lede Reboot 1925
Kernel 4.4.24


Thanks for helping!


Found out which is the LEDE rev that introduce the issue:



Found out which is exactly the change that introduced the issue with the wifi.

d15dc7e85dbf38c07dd5a7f8068ee6655830548e is the first bad commit
commit d15dc7e85dbf38c07dd5a7f8068ee6655830548e
Author: John Crispin john@phrozen.org Date: Mon Oct 31 16:38:26 2016 +0100

  fstools: update to latest git HEAD
 
  adds f2fs support
 
  Signed-off-by: John Crispin <john@phrozen.org>

:040000 040000 d10d6f1edb2d916c88f844529897be401c0415af a654e081b6bea3460a4cd606c64dc3fd9b49d0af M package

The issue can be triggered in my case doing these steps:

1) attach a USB 3.0 HDD formatted ext4
2) create a samba share pointing to a folder on the HDD
3) try to transfer a large file from the HDD to the smb client.

The transfer will die after few hundreds megabytes and the systemlog will show the aforementioned kernel error messages on the wifi.

At this point the 5GHz is unusable and the router needs to be rebooted.

Opened a new bug if anyone is interested.

https://bugs.lede-project.org/index.php … ask_id=284

All the tests have been done using the 5GHz network in ac.

sera wrote:

For now I still ponder if I should treat include/netfilter.mk as just another case of to clever for your own good.

Thanks for the clarifications -- how best to learn all these details (other than example) is unclear.  There's a lot of great stuff in the wikis but much of it has duplication or is outdated.  And the build scripts are actually terrible to wade through unless you already have an understanding of the flow, where variables are set, etc.

With respect to netfilter, I was asking somewhat because I've been playing in this area recently.  I know most users probably don't necessarily want or expect a fully functional Linux appliance but if a feature is integrated I would like it to work as expected.  Example:  I had a case where I wanted to sniff NFLOG messages with tcpdump and this wouldn't work -- turns out it's disabled intentionally (no configuration) in libpcap makefile.  Now this is easily patched (and I may submit one) but somebody intentionally disabled the functionality -- why, and with good reason?  Or is it just to keep size down (which with routers these days should be a configurable option).

InkblotAdmirer wrote:
sera wrote:

For now I still ponder if I should treat include/netfilter.mk as just another case of to clever for your own good.

Thanks for the clarifications -- how best to learn all these details (other than example) is unclear.  There's a lot of great stuff in the wikis but much of it has duplication or is outdated.  And the build scripts are actually terrible to wade through unless you already have an understanding of the flow, where variables are set, etc.

There isn't a linear path to follow. First a good understanding of shell and make are important. You can aquire that knowlage anywhere. Get into the habit of doing everything only once, ie write a script for the task. As for make, well, publicy maintaining packages will get you the help you need should you run into issues and the man page doesn't help. To the basics I'd also count knowing a real text editor like vim or emacs and tools like sed grep cut awk and obviously git. I mean if it takes you forever to do any meaningful modifications playing around is just far to expensive. Package managment could be descriped as the discipline mapping package relations into a package managment framework. So obviously the more you know about such relations the easier life becomes.

So how about going about this. Difficult. Read the Makefiles and scripts that actually drive the package Makefiles. Unlike for example https://projects.gentoo.org/pms/6/pms.html OpenWrt doesn't formalize package managment, certainly not to a point where you could ignore the implementation.


InkblotAdmirer wrote:

With respect to netfilter, I was asking somewhat because I've been playing in this area recently.  I know most users probably don't necessarily want or expect a fully functional Linux appliance but if a feature is integrated I would like it to work as expected.  Example:  I had a case where I wanted to sniff NFLOG messages with tcpdump and this wouldn't work -- turns out it's disabled intentionally (no configuration) in libpcap makefile.  Now this is easily patched (and I may submit one) but somebody intentionally disabled the functionality -- why, and with good reason?  Or is it just to keep size down (which with routers these days should be a configurable option).

include/netfilter.mk violates the expectation of the build failing for the issues I pointed out (except for the documentation one). Other than that, it certainly doesn't make it easier to grasp what is happening.

Sorry, posts 13726 to 13725 are missing from our archive.