Bug 913631

Summary: Slow wireless connection using rt2800usb driver (Asus USB-N13 dongle)
Product: [Fedora] Fedora Reporter: Stephen So <steve8988>
Component: kernelAssignee: Stanislaw Gruszka <sgruszka>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: benimnetz, bgmarete, dan.gebhardt, fh9a4yhnjkw, gansalmon, giuseppe_stolnicu, igaldino, ionut.scutaru, itamar, johannes.segitz, john, jonathan, kernel-maint, madhu.chinakonda, mine809, mralexjoin, redhat, serj.pilipenko, sgruszka, shiamsaravanan, spojenie, sublimeclerk, tomek, voltagex
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-09-04 09:13:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
rt2800_fix_tx_power.patch
none
Output from running iw dev wlan0 scan
none
output of iw dev scan
none
Screenshot of iwconfig and System Monitor
none
slow_down_txstatus_polling.patch
none
First patch to apply to ralink drivers
none
Second patch to apply to ralink drivers none

Description Stephen So 2013-02-21 16:35:03 UTC
Description of problem:

When using the rt2800usb drivers that comes with the kernel, my USB wireless dongle (Asus USB-N13) which uses an Ralink 3072 chipset gives me a very slow and erratic connection (i.e. the rate according to iwconfig continously changes up and down from say 10 Mb/s to 130 Mb/s).

Ralink's own linux driver rt3070sta (http://www.mediatek.com/_en/07_downloads/01_windows.php?sn=501) connects at full speed of 270 Mb/s but their latest driver is broken for kernel versions > 3.3.4 with hard freezes once the internet is accessed.

So I am forced to use the one that comes with the kernel (rt2800usb) but performance has been very suboptimal. I have tried turning off the power management but the effects seems negligible.


Version-Release number of selected component (if applicable):

3.7.6-201.fc18.x86_64

How reproducible:

Always

Steps to Reproduce:
1.  Connect to 802.11n router
2.  run iwconfig wlan0 in terminal
3.  copy some files across wifi
  
Actual results:

Bit rate varies from low to medium but rarely hits the optimum rate.

Expected results:

Should connect at the full rate and get decent file transfer speeds

Additional info:

Probably not entirely related but something happened between kernel 3.3 and 3.4 that broke Ralink's wireless driver (rt3070sta).  One option would be to run kernel 3.3.4 (that came with Fedora 17) in Fedora 18 and it works great but working with frequent kernel updates is a nuisance.

Comment 1 pablo 2013-04-20 11:55:45 UTC
Maybe this will work:

su -
nano /etc/modprobe.d/blacklist.conf

and add at the bottom:

#network drivers
blacklist rt2800usb



It works well for me and my connection stops hanging and changing it's speed.
I'm on 3.6.10-4.fc18.i686.PAE




Give a report if it work :)


Cheers,
pablo

Comment 2 Stephen So 2013-04-21 11:24:50 UTC
I don't see how that's going to work since there are no other drivers that work for the N13 dongle on 64-bit kernels (> 3.3). Ralink's driver causes a hard freeze when accessing the network.  The rt2800usb driver is the only that works but is unacceptably slow.

Comment 3 Stanislaw Gruszka 2013-05-02 12:55:44 UTC
Created attachment 742693 [details]
rt2800_fix_tx_power.patch

There is TX power setting bug on rt2x00 that make we transmit at -10dBm to +6dBm instead of 0dBm to +16dBm . This can manifest by slow throughput, if AP is far enough to do not fast rates at 6dBm.

Patch fixes TX power setting.

Comment 4 Stanislaw Gruszka 2013-05-02 12:59:56 UTC
Kernel build (still compiling) with above patch is here :
http://koji.fedoraproject.org/koji/taskinfo?taskID=5324557
Please test it and check if it fix the problem.

Comment 5 Stephen So 2013-05-03 12:26:38 UTC
The speed has improved slightly. Previously, file transfers were going at 250 kB/s. But using the patched driver, I am now getting between 1 to 1.5 MB/s. It connects at about 28 Mbps. 
There are lots of Tx excessive retries and invalid misc values in iwconfig.

However this is still slower than the rt3070sta driver that connects at 270 mbps and file transfer is at 7-8 MB/s.

Comment 6 Stanislaw Gruszka 2013-05-10 07:50:15 UTC
Please install 3.9 kernel from:
http://koji.fedoraproject.org/koji/buildinfo?buildID=417595

It will print more detailed information about the Ralink chipset like below on dmesg:
phy0 -> rt2x00_set_chip: Info - Chipset detected - rt: 3572, rf: 0008, rev: 0221

Please provide that information here.

Comment 7 Stephen So 2013-05-10 10:51:09 UTC
I have installed the 3.9 kernel and here is the requested dmesg info


[   16.814353] phy0 -> rt2x00_set_chip: Info - Chipset detected - rt: 3071, rf: 0008, rev: 021c.
[   16.999340] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   27.400139] phy0 -> rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'.
[   27.605996] phy0 -> rt2x00lib_request_firmware: Info - Firmware detected - version: 0.29.

Comment 8 Stephen So 2013-05-11 03:40:41 UTC
Wireless performance is not so good now and there are lots of messages in dmesg




[ 8657.378192] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.430557] phy0 -> rt2800usb_txdone: Warning - Data pending for entry 2 in queue 2
[ 8657.431073] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.431153] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.431277] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.431400] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.431524] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.454264] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.454385] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.454510] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 8657.454635] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 9126.580082] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 2
[ 9126.580132] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 2
[ 9126.580139] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 2
[ 9126.580169] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 10 in queue 2
[ 9126.788073] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 9126.794696] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[12522.125802] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 14 in queue 2
[12522.125857] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 14 in queue 2
[12522.125870] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 14 in queue 2
[12522.125887] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 15 in queue 2
[12522.125895] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 0 in queue 2
[12522.127433] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[12522.142800] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[12522.273595] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping

Comment 9 Stephen So 2013-07-03 12:42:07 UTC
Just a heads up that in Fedora 19 using the 3.9.8-300.fc19.x86_64 kernel, the rt2800usb driver is still suboptimal and slow.

Doing a dmesg gives lots and lots of the following errors:

phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1941.585858] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1941.585983] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1941.684281] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 13 in queue 0
[ 1941.684321] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 13 in queue 0
[ 1941.684334] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 13 in queue 0
[ 2082.926574] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 0
[ 2082.926621] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 0
[ 2082.926637] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 0
[ 2082.927322] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 10 in queue 0
[ 2082.927364] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 10 in queue 0
[ 2082.927374] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 10 in queue 0
[ 2082.929319] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 12 in queue 0
[ 2082.929355] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 12 in queue 0
[ 2082.929362] phy0 -> rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 12 in queue 0
[ 2082.929704] phy0 -> rt2800usb_txdone: Warning - Got TX status for an empty queue 0, dropping

Comment 10 Stephen So 2013-07-08 11:04:32 UTC
Print out of iwconfig on kernel 3.9.9-301.fc19.x86_64 

Notice the large values of Tx excessive retries and Invalid misc.


wlp0s19f2u5  IEEE 802.11bgn  ESSID:"xxxxx"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 2C:B0:5D:3F:25:76   
          Bit Rate=43.3 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=69/70  Signal level=-41 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:14057  Invalid misc:56487   Missed beacon:0

Comment 11 Edek Pienkowski 2013-07-08 18:03:42 UTC
I also have this problem and it is noticable that the connection breaks during idle time (in probably minutes, on my system it is a few times per day). Pinging something every couple of minutes fixes the problem.

Together with NetworkManager this means that the connection is still "up" just no data gets through, until it is brough down and up by clicking nm-applet or by nmcli.

(sorry for the lack of hardware info, but I have thrown the "broken" dongle somewhere and I just can't find it)

Comment 12 Emil Lauridsen 2013-08-03 10:51:56 UTC
I'm experiencing the same symptoms as Edek.
The device I'm using is a "D-Link Corp. DWA-140 RangeBooster N Adapter(rev.B3) [Ralink RT5372]" as per lsusb.

Any progress on this issue?

Comment 13 Stanislaw Gruszka 2013-08-05 14:06:47 UTC
I tested similar USB dongle like Steve has with "rt: 3071, rf: 0008, rev: 021c" and it works pretty well here. Looks like issue is AP specific. Please provide output of "iw dev wlan0 scan" and iwconfig (with association established).

Comment 14 Stephen So 2013-08-06 00:14:57 UTC
Is there any info I can provide that could assist with this problem? 

When trying to ftp files from my machine using the dongle, I'm getting timeout errors, and NFS shares are slow and pause intermittently. So it is currently looking very grim :(

Comment 15 Stanislaw Gruszka 2013-08-06 06:12:48 UTC
Steve, please provide info requested in comment 13.

Comment 16 Stephen So 2013-08-06 13:37:05 UTC
Created attachment 783339 [details]
Output from running    iw dev wlan0 scan

OK, this is the output from running iw dev wlan0 scan while connected.  Since the output is a bit long, I've saved it to a text file and uploaded as an attachment.

Comment 17 Stephen So 2013-08-06 13:39:49 UTC
btw. My wireless network SSID is called Wireless@Home

Comment 18 Stephen So 2013-08-06 13:41:36 UTC
Output from iwconfig:

$ iwconfig
wlan0     IEEE 802.11bgn  ESSID:"Wireless@Home"
          Mode:Managed  Frequency:2.462 GHz  Access Point: 2C:B0:5D:3F:25:76
          Bit Rate=90 Mb/s   Tx-Power=20 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=53/70  Signal level=-57 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:9  Invalid misc:32   Missed beacon:0

lo        no wireless extensions

Comment 19 John 2013-08-06 19:18:43 UTC
Created attachment 783470 [details]
output of iw dev scan

iwconfig:

wlp0s29f7u2  IEEE 802.11bgn  ESSID:"xxxxxxxxx"
          Mode:Managed  Frequency:2.412 GHz  Access Point: 10:BF:48:53:DE:18
          Bit Rate=72.2 Mb/s   Tx-Power=20 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=70/70  Signal level=-17 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:43  Invalid misc:179   Missed beacon:0

Comment 20 Adam Baxter 2013-08-11 04:03:39 UTC
I have similar issues and errors with both an EDUP and DLink DWA123 stick.
Both are rt2800 based.

Comment 21 Stephen So 2013-08-16 13:50:20 UTC
One observation I made just now.

If I configure my wireless router to use G (54 Mbps), then the connection appears to be full speed.  As a test, scp'ing a file over wifi, I get a near constant transfer of 1.5 MB/s.

Previously, my wireless router was using N speeds (300 Mbps) and I got an average 200 kB/s transfers.

This was confirmed with two different routers (Netgear and Asus).  On the Asus router, I can set it to use 20 MHz bandwidth to get half N speeds (75.5 Mbps) but connection was still very slow.

So it looks like the driver is not working for 802.11n wifi, but appears fine connecting using G.  

Can anyone else confirm this observation?

Comment 22 Edek Pienkowski 2013-08-16 19:05:47 UTC
(In reply to Steve from comment #21)
> One observation I made just now.

> So it looks like the driver is not working for 802.11n wifi, but appears
> fine connecting using G.  
> 
> Can anyone else confirm this observation?

One observation I just made now: there so many problems with wifi dongles that it is hard to tell which one to start with.

I had a g/b only router and throughput problems. But I have seen similar problems with a different usb card and a different router (bgn).

Comment 23 Emil Lauridsen 2013-08-18 15:54:14 UTC
(In reply to Stanislaw Gruszka from comment #13)
> I tested similar USB dongle like Steve has with "rt: 3071, rf: 0008, rev:
> 021c" and it works pretty well here. Looks like issue is AP specific. Please
> provide output of "iw dev wlan0 scan" and iwconfig (with association
> established).

Output of iwconfig:
wlp3s0u2  IEEE 802.11bgn  ESSID:"hfxFV6UT"  
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:8E:F2:C2:A2:4A   
          Bit Rate=1 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=41/70  Signal level=-69 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:599  Invalid misc:29   Missed beacon:0

Output of iw was a bit long so I uploaded it to pastebin: http://pastebin.com/Jvg6vN3e

Sorry about the delay in response.

Comment 24 Stanislaw Gruszka 2013-08-26 13:34:30 UTC
Please check if below kernel make something better, I hope it would fix problem at least for some of you ...

http://koji.fedoraproject.org/koji/taskinfo?taskID=5853915

Comment 25 Emil Lauridsen 2013-08-27 15:01:26 UTC
(In reply to Stanislaw Gruszka from comment #24)
> Please check if below kernel make something better, I hope it would fix
> problem at least for some of you ...
> 
> http://koji.fedoraproject.org/koji/taskinfo?taskID=5853915

Didn't seem to help in my case.

Still getting an excessively high amount of "Tx excessive retries" and "Invalid misc".

Also these two seem to be getting logged quite a lot (e.g. several times per second):
[  134.291034] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 7 in queue 2
[  134.381441] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping

Comment 26 Stephen So 2013-08-29 11:56:16 UTC
I have done some further tests with the new kernel.  

1.  Using FTP transfers from a PC over wifi (using an intel wifi card) to a PC using the troublesom Asus wifi dongle, speeds are slowish for a one or two minutes before the bitrate picks up (see attached screenshot of system monitor) with peak transfer speed of 9 MB/s.  This is the same for sending as well as receiving.

2.  Using FTP transfers from PC to PC (BOTH using the Asus wifi dongle), the speed is much much less (600 kB/s) and does not pick up over time.

3.  There are still lots of TX excessive retries and Invalid miscs in either case.

4.  I've noticed subtle improvements by replacing the rt2870.bin firmware file that came with Fedora (ver 0.29) with an updated one from the ralink driver set (ver 0.32).  Not sure if this is just placebo.

Comment 27 Stephen So 2013-08-29 11:58:52 UTC
Created attachment 791741 [details]
Screenshot of iwconfig and System Monitor

Shows the transfer rate picking up over time while using FTP.  The bitrate from iwconfig also fluctuates at 30 Mbps to 60 Mbps early on before rising up and peaking at 300 Mbps in the same period as the increase in transfer rate (10 MB/s)

Comment 28 mokba 2013-09-02 19:40:37 UTC
to handle txstatus timeout errors change the timeout value in rt2800usb.c and rt2x00queue.h source files before compiling firmware from 100 to 500

time_after(jiffies, entry->last_action + msecs_to_jiffies(100)); 

EDUP mini adapter is a great one to start with. it works very well with openwrt.

rt2800_fix_tx_power.patch applies only to rt307x chipsets? if so it might be just the one i need

Comment 29 mralexjoin 2013-09-24 09:22:36 UTC
(In reply to mokba from comment #28)
> to handle txstatus timeout errors change the timeout value in rt2800usb.c
> and rt2x00queue.h source files before compiling firmware from 100 to 500
> 
> time_after(jiffies, entry->last_action + msecs_to_jiffies(100)); 
> 
> EDUP mini adapter is a great one to start with. it works very well with
> openwrt.
> 
> rt2800_fix_tx_power.patch applies only to rt307x chipsets? if so it might be
> just the one i need

Ralink 2870 not start wirth 500 msecs.

Comment 30 mokba 2013-09-25 13:47:43 UTC
(In reply to mralexjoin from comment #29)
> 
> Ralink 2870 not start wirth 500 msecs.

try experimenting with lower values. this worked with rt5370 and rt3070 chipsets for kernel version 3.6.11

more details you can find here https://dev.openwrt.org/ticket/13523

Comment 31 Stanislaw Gruszka 2013-10-15 10:32:33 UTC
Created attachment 812416 [details]
slow_down_txstatus_polling.patch

This patch should address lot of 

[10308.191499] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 4 in queue 0
[10308.333725] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 0, dropping

messages. Perhaps it also fix performance problems .

Comment 32 Stephen So 2013-10-15 11:09:04 UTC
Is there a kernel build that includes this latest patch?  I would like to test it.

Comment 33 mralexjoin 2013-10-16 04:13:59 UTC
(In reply to Stanislaw Gruszka from comment #31)
> Created attachment 812416 [details]
> slow_down_txstatus_polling.patch
> 
> This patch should address lot of 
> 
> [10308.191499] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning -
> TX status timeout for entry 4 in queue 0
> [10308.333725] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for
> an empty queue 0, dropping
> 
> messages. Perhaps it also fix performance problems .

I recompiled kernel with this patch. Now I not have any TX status timeout errors but wireless connection still slow and iwconfig shows high TX excessive retries. I try it with kernel 3.11.5 and chipset rt5370.

(In reply to mokba from comment #30)
> (In reply to mralexjoin from comment #29)
> > 
> > Ralink 2870 not start wirth 500 msecs.
> 
> try experimenting with lower values. this worked with rt5370 and rt3070
> chipsets for kernel version 3.6.11
> 
> more details you can find here https://dev.openwrt.org/ticket/13523

I try again with you patch and chipset rt5370. Wireless connection start but rate remained the same.

Comment 34 Stanislaw Gruszka 2013-10-16 09:44:04 UTC
Kernel build with patch launched here:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6064542

Comment 35 Stephen So 2013-10-17 13:13:32 UTC
The messages have reduced a lot in number but the speed is still very slow. After doing some file transfer tests, eventually some of these messages appeared.

[ 1431.600499] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 14 in queue 2
[ 1431.600531] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 15 in queue 2
[ 1431.600543] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 0 in queue 2
[ 1431.600552] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 1 in queue 2
[ 1431.600560] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 2 in queue 2
[ 1431.600568] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 3 in queue 2
[ 1431.600576] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 4 in queue 2
[ 1431.600584] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 5 in queue 2
[ 1431.600592] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 6 in queue 2
[ 1431.600600] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 7 in queue 2
[ 1431.600608] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 8 in queue 2
[ 1431.603090] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603209] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603333] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603491] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603586] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603708] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603832] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.603957] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.604083] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.604207] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 1431.604332] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping

Comment 36 Brian Gitonga Marete 2013-12-12 10:43:29 UTC
I am also seeing this when using hostapd with a DLINK System DWA-125 Wireless N 150 Adapter(rev.A1) [Ralink RT3070] (ID 07d1:3c0d) and an Android phone for access to the created AP.

After the first couple of "rt2800usb_entry_txstatus_timeout" messages, the link speed to the phone falls to as low as < 100Kbps.

A reset of the device (by re-plugging it in) solves the problem until the next timeout message(s).

This is on kernel 3.12.3. I am using the latest hostapd from the GIT tip as of the time of this writing.

Comment 37 Isaque Galdino 2014-01-14 16:13:51 UTC
I can confirm this error in Fedora 20:
$ uname -a
Linux localhost.localdomain 3.12.7-300.fc20.x86_64 #1 SMP Fri Jan 10 15:35:31 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

BUT, after using the instructions Steve gave in comment 21, about changing wireless router to G. My connection is much better now without those ugly messages in dmesg.

The last messages from dmesg are only:
[ 1715.177796] wlp0s26u1u1: authenticate with 74:ea:3a:e1:ca:34
[ 1715.187730] wlp0s26u1u1: send auth to 74:ea:3a:e1:ca:34 (try 1/3)
[ 1715.189109] wlp0s26u1u1: authenticated
[ 1715.189664] wlp0s26u1u1: associate with 74:ea:3a:e1:ca:34 (try 1/3)
[ 1715.192003] wlp0s26u1u1: RX AssocResp from 74:ea:3a:e1:ca:34 (capab=0x431 status=0 aid=2)
[ 1715.198973] wlp0s26u1u1: associated

And this is how my interface looks like:
$ iwconfig wlp0s26u1u1
wlp0s26u1u1  IEEE 802.11bgn  ESSID:"mysid"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 74:EA:3A:E1:CA:34   
          Bit Rate=54 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=57/70  Signal level=-53 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:264  Invalid misc:1104   Missed beacon:0

I'll keep this setup for now, but I really would like to have it working in N mode as well.

Comment 38 giuseppe_stolnicu 2014-01-23 15:52:35 UTC
Hi,
 Alfa Networks has released a new driver (v2.6.1.3 - 2013/11/27) 2 months ago for their rt3070 chip usb wifi adapter (ge-rt3070 / awus036nh).
Direct download link: http://sourceforge.net/projects/alfanetwork/files/Driver/3070_LinuxSTA_2.6.1.3_20121022.tar.bz2/download

 I tested it on my arch linux with 3.12.8 kernel and it build and inserts without any errors (well except some cp commands to a /tftpboot dir that I commented out). I also placed 2870 first on the chipset line in the makefile since it builds only the first.

  For now i can only scan the waves because it has a semi-documented .dat settings file and I don't know what to modify (i tried the stuff in the readme but without success).

 Anyway the scan seemed promising : my router with the new driver was shown to have a signal power of -1, while the old rt2800usb shows it at -11. Fingers crossed, maybe it works...

 Can you guys please check it out and see if it works ?

Comment 39 Justin M. Forbes 2014-03-10 14:49:46 UTC
*********** MASS BUG UPDATE **************

We apologize for the inconvenience.  There is a large number of bugs to go through and several of them have gone stale.  Due to this, we are doing a mass bug update across all of the Fedora 19 kernel bugs.

Fedora 19 has now been rebased to 3.13.5-100.fc19.  Please test this kernel update and let us know if you issue has been resolved or if it is still present with the newer kernel.

If you experience different issues, please open a new bug report for those.

Comment 40 Stephen So 2014-03-11 11:36:36 UTC
I tried downloading and compiling the alfa networks driver.  It compiled and installed fine (after applying a few patches from this site: http://ubuntuforums.org/showthread.php?t=2198957&page=2&s=08a6bd6cc21152d1a7f9e2bbbd13f655) but it couldn't authenticate on my wifi.

So I tried applying the two patches I found from the Ubuntu site on the 2.5.0.3 ralink drivers.  Surprisingly, the ralink driver compilers and the hard freezes I used to get are now GONE!!  After applying the two patches (3.8 and 3.12), it has fixed the problems and I get full N speed wifi.

I attach the two patches that I downloaded from the ubuntuforums site above

My kernel version is 3.13.6-200.fc20.x86_64

% iwconfig
ra0       Ralink STA  ESSID:"Wireless@Home"  Nickname:"RT2870STA"
          Mode:Managed  Frequency=2.462 GHz  Access Point:
          Bit Rate=270 Mb/s   
          RTS thr:off   Fragment thr:off
          Link Quality=100/100  Signal level:-46 dBm  Noise level:-57 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

This is a great result for users of wifi dongles based on this chipset who are not satisfied with the rt2800usb.

Comment 41 Stephen So 2014-03-11 11:38:16 UTC
Created attachment 873068 [details]
First patch to apply to ralink drivers

This patch was found at the site below:

http://ubuntuforums.org/showthread.php?t=2198957&page=2&s=08a6bd6cc21152d1a7f9e2bbbd13f655

Apply this first.

Comment 42 Stephen So 2014-03-11 11:40:11 UTC
Created attachment 873069 [details]
Second patch to apply to ralink drivers

Obtained from:  http://ubuntuforums.org/showthread.php?t=2198957&page=2&s=08a6bd6cc21152d1a7f9e2bbbd13f655

Apply this after the 3.8 patch.  Fixes some compiler errors.

Comment 43 Stanislaw Gruszka 2014-03-12 14:19:12 UTC
It would be interesting if difference make firmware version used on vendor driver and rt2800usb.

Steve, could you check if replacing firmware for rt2800usb make it work better ? It can be done like on below example:

cp /lib/firmware/rt2870.bin /lib/firmware/rt2870.bin.old
cp VENDOR_DRIVER_SOURCE/common/rt2870.bin /lib/firmware/

Comment 44 Stephen So 2014-03-14 12:07:23 UTC
I tried the above suggestion.  I did a dmesg to confirm that it was using the new firmware (the original firmware was version 0.29)

[ 1475.211350] ieee80211 phy2: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[ 1475.211389] ieee80211 phy2: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.33

However, the performance of the rt2800usb driver is still slow and erratic.  For example, FTPing a large ISO file, the transfer fluctuates between stalling to 700 KBps.  Using the vendor driver, I get between 10 to 12 MBps.  So the difference is very significant.

Comment 45 Justin M. Forbes 2014-05-21 19:30:05 UTC
*********** MASS BUG UPDATE **************

We apologize for the inconvenience.  There is a large number of bugs to go through and several of them have gone stale.  Due to this, we are doing a mass bug update across all of the Fedora 19 kernel bugs.

Fedora 19 has now been rebased to 3.14.4-100.fc19.  Please test this kernel update (or newer) and let us know if you issue has been resolved or if it is still present with the newer kernel.

If you have moved on to Fedora 20, and are still experiencing this issue, please change the version to Fedora 20.

If you experience different issues, please open a new bug report for those.

Comment 46 Stanislaw Gruszka 2014-05-21 21:33:56 UTC
This bug is not fixed for sure.

Comment 47 Stephen So 2014-09-11 13:08:03 UTC
I seem to be getting some dropouts with rt2800usb now in the latest kernel 3.15.10-201.fc20.x86_64.  It is still connected to the wifi router, but I can barely access the internet.  Download drops to a snail's pace.  

This message popped up in dmesg

[ 9116.998472] ieee80211 phy0: rt2800usb_txdone: Warning - Data pending for entry 8 in queue 2

These are very rare now but occasionally one or two do pop up.

When this happens, the bitrate in iwconfig is stuck at a low speed (14.4 Mb/s)

wlp0s22f2u3  IEEE 802.11bgn  ESSID:"Wireless@Home"  
          Mode:Managed  Frequency:2.457 GHz  Access Point:    
          Bit Rate=14.4 Mb/s   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=53/70  Signal level=-57 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:102901  Invalid misc:217236   Missed beacon:0

Comment 48 Emil Lauridsen 2014-10-26 16:11:45 UTC
Just did a clean reinstall after a longer period of inactivity. At 3.16.6-200.fc20.x86_64 now and still experiencing the same issues as Steve. If anybody needs more information, or help debugging, I'll gladly help.

Comment 49 Stephen So 2014-10-27 12:48:23 UTC
Things have improved a bit now with the latest F20 kernel 3.16.6-200.fc20.x86_64.  Looks like I am back to use firmware 0.29.

ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.29

The wireless begins as before:

- slow transfer
- Bit Rate fluctuates in low region (< 54 Mb/s)
- lots of Tx excessive retries and Invalid misc's

After a few minutes of continuous file transfers, the wireless becomes a bit more stable.  

- The Bit Rate fluctuates in the high speed region (144.4 Mb/s to 270 Mb/s)
- The increase of Tx excessive retries slows down
- Still lots of Invalid misc
- Decent file transfer rate

Sometimes it will stall to the point where I cannot access the internet.  But still, it is encouraging that it now has 'bursts' of speed.

wlp0s19f2u5  IEEE 802.11bgn  ESSID:"Wireless@Home"  
          Mode:Managed  Frequency:2.457 GHz  Access Point:   
          Bit Rate=270 Mb/s   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=57/70  Signal level=-53 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:7511  Invalid misc:39056   Missed beacon:0

Has something changed recently in the rt2800usb driver?

Comment 50 Stanislaw Gruszka 2014-11-06 20:11:09 UTC
(In reply to Steve from comment #49)
> Has something changed recently in the rt2800usb driver?

There ware only cosmetic changes in the rt2800usb driver, nothing that could affect performance. But there ware big changes in mac80211 layer, so perhaps this influenced performance somehow.

Comment 51 Joe 2014-11-12 19:35:32 UTC
I can confirm the issues with this error as well...

I've tried the updated kernel 3.16.7
I've tried the updated firmware 0.29 ---> 0.33
I've had fewer errors for the most part by throttling down my wireless adapters Bit Rate to 11Mb/s

I'm using a Panda Mid-Range Wireless Adapter and was unable to turn the hardware encryption off so that the software encryption takes over (as some have suggested)
I was unable to adjust my Beacon Interval, again I dont think this is supported on my device
I was also unable to edit my Retry Limit.
I didn't notice much of a change when altering the RTS threshold and Fragement threshold. I tried 2040 and 784 bytes on both. The 784 bytes produced fewer TX retries, but did not hold the connection well enough.

---iwconfig output---
IEEE 802.11bgn  ESSID:"Homespot"  
          Mode:Managed  Frequency:2.412 GHz  Access Point: 00:21:B2:49:34:B1   
          Bit Rate=11 Mb/s   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=55/70  Signal level=-55 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:52  Invalid misc:770   Missed beacon:0

Any further suggestions would be great.

Comment 52 mokba 2014-11-22 02:19:50 UTC
(In reply to Stanislaw Gruszka from comment #50)
> (In reply to Steve from comment #49)
> > Has something changed recently in the rt2800usb driver?
> 
> There ware only cosmetic changes in the rt2800usb driver, nothing that could
> affect performance. But there ware big changes in mac80211 layer, so perhaps
> this influenced performance somehow.

i can confirm there were recent changes that affect rt2800usb performance positively.

i did test with several backport releases, backports-3.13.2-1 was still having reception problems but with backports-3.15.1-1 reception seems to be smooth and consistent.

test scenario:

rt5370 usb adapter connecting from ubuntu lucid notebook to openwrt router and running airodump from openwrt via ssh to monitor distant wifi networks at another openwrt interface.

results:

starting with compat-wireless-3.5-rc1, several other compat/backports releases and backports-3.13.2-1 latest being tested, the incoming beacons on ssh airodump console were increasing inconsistently, like some kind of bursts every half of a second or every second indicating a hiccups in reception quality.

with backports-3.15.1-1 and same test being ran, the beacons are now increasing consistently and the reception seems to be smooth without slowdowns.

to be more specific about the test i made, i have not used 802.11n standard on any of my interfaces, only 802.11bg so this indicates that the underlying connection quality issues are now fixed and will probably make fixing of possible 802.11n related issues much easier.

Comment 53 Benjamin 2015-02-19 11:13:34 UTC
Hi,

while i am on Ubuntu and running another Dongle (albeit the same chipset), i wanted to confirm this observation from Steve. It seems to be still valid. Note: I get now TX warnings or anything, but Wifi speed is slow and even seems to slow down more and more during session. As Steve did, i disabled N mode for my 2.4 GHz wifi and immediatly got way better speed. Internet is usable again!

I find interesting to note that on Windows with the same router and dongle and same positions, i get a very good and fast 5Ghz connection, but that network ins't even visible in linux.

See iw config before and after disabling N-standard:
before ❯❯❯ iwconfig                                                                   ⏎
eth0      no wireless extensions.

lo        no wireless extensions.

wlan0     IEEE 802.11abgn  ESSID:"Snoopy"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 24:69:A5:75:AB:23   
          Bit Rate=130 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=50/70  Signal level=-60 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:3244  Invalid misc:826   Missed beacon:0

after ❯❯❯ iwconfig
eth0      no wireless extensions.

lo        no wireless extensions.

wlan0     IEEE 802.11abgn  ESSID:"Snoopy"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 24:69:A5:75:AB:23   
          Bit Rate=54 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=44/70  Signal level=-66 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:1501  Invalid misc:6343   Missed beacon:0

I am on firmare 0.29 and kernel 3.13.0-45-generic

Don't know if that still helps but figured it might be useful information.
(In reply to Steve from comment #21)
> One observation I made just now.
> 
> If I configure my wireless router to use G (54 Mbps), then the connection
> appears to be full speed.  As a test, scp'ing a file over wifi, I get a near
> constant transfer of 1.5 MB/s.
> 
> Previously, my wireless router was using N speeds (300 Mbps) and I got an
> average 200 kB/s transfers.
> 
> This was confirmed with two different routers (Netgear and Asus).  On the
> Asus router, I can set it to use 20 MHz bandwidth to get half N speeds (75.5
> Mbps) but connection was still very slow.
> 
> So it looks like the driver is not working for 802.11n wifi, but appears
> fine connecting using G.  
> 
> Can anyone else confirm this observation?

Comment 54 Stephen So 2015-05-21 21:41:44 UTC
Another recent observation I've noticed.  When Fedora starts and the dongle connects to my router, it seems to flood the router continuously, so much so that the other occupants of the house cannot connect to the internet anymore.  We all use the same Asus N13 dongle but the others use Windows while I use Fedora 21. My machine isn't downloading/uploading anything.  Just being connected seems to flood the router.

Also, the network performance may have regressed slightly in the latest kernels.

Comment 55 shiyam 2018-06-29 07:18:26 UTC
I tried all the above patches but unfortunately none of them seems to work for me. Initially the AP i created using hostapd seems to be stable but when the number of users reaches 15 i tend to get txqueue error and later that flushes out my dmesg log. As a result the wifi speed also tend to decrease. I also get the watchdog error infrequently.  Is this problem caused by Ralink chipsets or due to insufficent power. Any comments regarding this will be greatful :-)