- Status Closed
- Percent Complete
- Task Type Bug Report
- Category Kernel
- Assigned To No-one
- Operating System All
- Severity High
- Priority Very Low
- Reported Version All
- Due in Version Undecided
-
Due Date
Undecided
- Private
Attached to Project: OpenWrt/LEDE Project
Opened by pmgp - 25.07.2017
Last edited by Ted Hess - 11.02.2018
Opened by pmgp - 25.07.2017
Last edited by Ted Hess - 11.02.2018
FS#929 - mt7620 abysmal wifi performance
HT40 wifi throughput went from ~80 Mbps(LEDE 17.01.0) to ~3Mpbs (since LEDE 17.01.2 to trunk, 17.01.1 wouldn’t build).
HT20 decreased from ~40 to ~10 Mbps.
device is archer C20i (mt7620a) on 2.4 GHz band, 5 Ghz is unsupported (mt7610E).
Log errors:
[ 9.197616] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 6352, rev 0500 detected [ 9.205560] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 7620 detected [ 304.206295] ieee80211 phy0: rt2x00queue_flush_queue: Warning - Queue 2 failed to flush [ 304.278242] ieee80211 phy0: rt2x00queue_flush_queue: Warning - Queue 2 failed to flush [ 306.059378] ieee80211 phy0: rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 2
fixed with
https://github.com/lede-project/source/pull/1234
That's not it.
The patch
020-21-rt2800-fix-LNA-gain-assignment-for-MT7620.patch
is already in place and the problem persists (trunk).
why do i even care about that
pmgp: actually, this patch has been introduced between 17.01.1 and 17.01.2, so it's possibly the source of the issue rather than the fix.
The commit in question for lede-17.01 https://git.lede-project.org/?p=source.git;a=commit;h=820a39687db3b14c3264ee37548e2cac3f911bca
Could you test reverting these commits in the lede-17.01 branch (one at a time) and see which one introduces the issue?
64fa4ead3247f50f39d2f5c1a48d38df5bc3cba0
eb11207397fe39ab37407ceeafb94b340d05a9e9
820a39687db3b14c3264ee37548e2cac3f911bca
psyborg55: please be respectful towards others, you're not being helpful.
Confirmed that on 17.01.0 and 17.01.1 there is no performance hit.
Reverting the patches on trunk had no effect on restoring performance. (or maybe I did it wrong? the files were indeed gone from the patches folder).
The channel number has an effect on HT40 behavior (1=slow,3=stalled).
Meanwhile, these are the unique "rt2" patches on 17.01.02 that are not on 17.01.1:
I'll try to ditch them all on 17.01.2 and see how it goes.
UPDATE: Again, removing the last 4 didn't improve things, must be somewhere else.
UPDATE2:
17.01.1's
621-rt2x00-add-support-for-mt7620.patch
has become 17.01.2's
020-19-rt2x00-add-support-for-MT7620.patch
which makes removing the rest of the 020s not possible unless I remove it too and brick something.
My blunt approach is at an end here, this must be debugged by someone who understands the driver.
removed
@psyborg55
tested just now
17.01.1: ~82/~78 Mbps dl/ul
your image: ~56 /~52 Mbps dl/ul
no errors on log and changing channels doesn't mess up like trunk
still, performance is lower
changed only the wireless configuration on your image:
use same settings when doing test, especially channel.
72/85 dl/ul in my case after reverting his mess-up
I used the same configuration on both.
I got the same speeds from the unpatched 17.01.2 that got for your image. (~55 Mbps).
Remains to be seen where is the difference that allows 17.01.0/1 to reach 80 Mbps.
I read that the mt7620 without heatsink has a thermal throttling issue with high wifi load. I'm looking into that.
removed
Your second image reached ~55 Mbps and remained stable.
17.01.1 got to ~70 today but becomes unstable with multiple clients. Besides the speed, those branches are not a working solution.
Trunk now reaches 50 Mbps but sometimes stalls with multiple clients.
Before testing I added a heatsink to the router's SoC, it gets quite toasty at load.
trunk is not expected to have stability. performance is usually lower. my second image is trunk from about10 days ago with minor change nothing special.
on chaos calmer speed is over 100Mbps
Since you mentioned it, I tried the CC image and got ~75 Mbps, stable with multiple clients.
What a shame the best is in the past. It's not the first time that this LEDE/OpenWrt fork messes up radios.
At this point, trunk won't go past ~50 Mbps @HT40 and the radio will stall if more than one device connects to the AP (but still show on scans and allows to connect).
Changing channel requires a device restart. Issuing "wifi" just makes it freeze as above.
Ocasional "queue full" errors show up on log, as in the original report.
maybe you could read dangowrt 's commit message before complaining about channel change, ha?
https://git.lede-project.org/?p=source.git;a=commit;h=9eacb9d7fc0b4c921f8d2ec91a51f10d8c3ae12f
"This makes the channel switching logic already look a bit more like
what we are used to in rt2x00.."
There was a bug introduced when LEDE pulled down the updated MT7260 patch from upstream mac80211 which might be causing this. Take a look at the patch linked from dangowrt's staging branch. (RT6352 was getting the wrong values set because of duplicated else if)
https://git.lede-project.org/?p=lede/dangole/staging.git;a=blob;f=package/kernel/mac80211/patches/021-rt2x00-apply-correct-TX_SW_CFG-values-for-MT7620.patch
that patch as well as others regarding rt6352 are irrelevant until this trac issue is closed: https://dev.openwrt.org/ticket/22086
I have found the commit that causes the drop in speed: https://github.com/lede-project/source/commit/4314646ac6343af3c9e813e6505b5ef072d2a714 It's previous commit has more than 60Mbps throughput but after this commit drops to less than 20 Mbps.
@ close request
You meant, "can't be bothered"?
Archer C20i HT40
OpenWrt SNAPSHOT, r5931-b33c3e1b7c: 40 Mbps
stock: 90 Mbps
How this issue can be closed when MT7620 keeps crashing with latest releases?