Subject: rt2800usb stops working with big file transfers in AP and IBSS

Hello

We have some Ralink RT3071 devices (Delock 88524) and we need to
configure them either as Ad-Hoc or Access Point. In both cases I get a
connection and seems to work for transferring small files (1MByte).
Whenever I start sending more (500Mbytes) then it starts, holds for
some time (3 seconds maybe) and then it drops. After that, the
connection is useless and things need to be restarted. We have a
laptop with an Intel 3945ABG which has no problems with the connection
and the big file, but all other devices (ralink 8188cu chipsets and
others) stop working when doing the big file transfer. The file
transfer is done via samba server with a windows xp machine as
counterpart. But that is not it as http transfer also stalls
everything.

I am using the compat-wireless driver from the 10th of March, cross
compiled against kernel 2.6.24.

I am using the firmware that can be downloaded from the Ralink website
V22 (any newer?)

For IBSS, I use iwconfig entirely and setup an uprotected connection
with a fixed ip address on both sides.

I do have a small issue on the 2.6.24 system due to cross compilation
(as my system was not pure 2.6.24) when registering the device....
dmesg shows:

#-----------------------------------------------------
sysfs: duplicate filename 'cpu_dma_latency' can not be created
WARNING: at fs/sysfs/dir.c:424 sysfs_add_one()
Pid: 2442, comm: insmod Not tainted 2.6.24_atom-atom-x86_586 #29
[<c01b19c8>] sysfs_add_one+0x54/0xb8
[<c01b1e9b>] create_dir+0x3c/0x6c
[<c01b1ef8>] sysfs_create_dir+0x2d/0x40
[<c0245c55>] kobject_add+0xe9/0x190
[<c0245b59>] kobject_set_name+0x81/0x94
[<c02ae39e>] device_add+0x91/0x540
[<c0245944>] kobject_init+0x29/0x37
[<c02aebb7>] device_create+0x7a/0x9a
[<c029cbca>] misc_register+0xc5/0xfe
[<e0a6512b>] compat_pm_qos_power_init+0xe/0x70 [compat]
[<e0869008>] compat_init+0x8/0x24 [compat]
[<c014642b>] sys_init_module+0x17c4/0x189f
[<c0178355>] do_sync_read+0xc7/0x10a
[<c0244c41>] _atomic_dec_and_lock+0x2d/0x4c
[<c0179549>] __fput+0x11a/0x144
[<c0104ff2>] syscall_call+0x7/0xb
=======================
kobject_add failed for cpu_dma_latency with -EEXIST, don't try to
register things with the same name in the same directory.
Pid: 2442, comm: insmod Not tainted 2.6.24_atom-atom-x86_586 #29
[<c0245cca>] kobject_add+0x15e/0x190
[<c0245b59>] kobject_set_name+0x81/0x94
[<c02ae39e>] device_add+0x91/0x540
[<c0245944>] kobject_init+0x29/0x37
[<c02aebb7>] device_create+0x7a/0x9a
[<c029cbca>] misc_register+0xc5/0xfe
[<e0a6512b>] compat_pm_qos_power_init+0xe/0x70 [compat]
[<e0869008>] compat_init+0x8/0x24 [compat]
[<c014642b>] sys_init_module+0x17c4/0x189f
[<c0178355>] do_sync_read+0xc7/0x10a
[<c0244c41>] _atomic_dec_and_lock+0x2d/0x4c
[<c0179549>] __fput+0x11a/0x144
[<c0104ff2>] syscall_call+0x7/0xb
=======================
pm_qos_param: cpu_dma_latency setup failed
Compat-wireless backport release: compat-wireless-2011-01-31-25-g9d8e201
Backport based on linux-next.git next-20110311
kfifo: module license 'unspecified' taints kernel.
Calling CRDA to update world regulatory domain
ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
usbcore: registered new interface driver rt2800usb
#-----------------------------------------------------

But I don't think this is the issue as i have the same problem in
other systems that do not present these warnings/errors.

For the Access Point, I use HostAPD and DHCP

For HostAPD, i use:

My dhcp.conf looks like
#-----------------------------------------------------
option domain-name "MyDomain";
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.111.255;

default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;

subnet 192.168.111.0 netmask 255.255.255.0 {
range 192.168.111.1 192.168.111.254;
option ip-forwarding off;
default-lease-time 86400;
max-lease-time 86400;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.111.255;
authoritative;
}
#-----------------------------------------------------

My hostapd.conf looks like
#-----------------------------------------------------
interface=wlan5
driver=nl80211
ssid=rt3070ap_g2
channel=2
hw_mode=g
max_num_sta=1
#-----------------------------------------------------

HostAPD is correctly configured and connections are possible. DHCP
works as well as the devices get their IP address. HostAPD does not
show any irregularities, and any other log files do not give any
hints.

iwconfig shows
#-----------------------------------------------------
wlan5 IEEE 802.11bgn Mode:Master Frequency:2.417 GHz Tx-Power=20 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on

mon.wlan5 IEEE 802.11bgn Mode:Monitor Tx-Power=20 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on
#-----------------------------------------------------

hostapd shows:
#-----------------------------------------------------
nl80211: Register Action command failed: ret=-114 (Operation already
in progress)
nl80211: Register Action match - hexdump(len=1): 06
nl80211: Failed to register Action frame processing - ignore for now
nl80211: Add own interface ifindex 4
nl80211: New interface mon.wlan5 created: ifindex=6
nl80211: Add own interface ifindex 6
BSS count 1, BSSID mask 00:00:00:00:00:00 (0 bits)
nl80211: Added 802.11b mode based on 802.11g information
Allowed channel: mode=1 chan=1 freq=2412 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=2 freq=2417 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=3 freq=2422 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=4 freq=2427 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=5 freq=2432 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=6 freq=2437 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=7 freq=2442 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=8 freq=2447 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=9 freq=2452 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=10 freq=2457 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=11 freq=2462 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=1 freq=2412 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=2 freq=2417 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=3 freq=2422 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=4 freq=2427 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=5 freq=2432 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=6 freq=2437 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=7 freq=2442 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=8 freq=2447 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=9 freq=2452 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=10 freq=2457 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=11 freq=2462 MHz max_tx_power=20 dBm
RATE[0] rate=10 flags=0x1
RATE[1] rate=20 flags=0x1
RATE[2] rate=55 flags=0x1
RATE[3] rate=110 flags=0x1
RATE[4] rate=60 flags=0x0
RATE[5] rate=90 flags=0x0
RATE[6] rate=120 flags=0x0
RATE[7] rate=180 flags=0x0
RATE[8] rate=240 flags=0x0
RATE[9] rate=360 flags=0x0
RATE[10] rate=480 flags=0x0
RATE[11] rate=540 flags=0x0
Completing interface initialization
Mode: IEEE 802.11g Channel: 2 Frequency: 2417 MHz
Flushing old station entries
Deauthenticate all stations
wpa_driver_nl80211_set_key: ifindex=4 alg=0 addr=(nil) key_idx=0
set_tx=1 seq_len=0 key_len=0
wpa_driver_nl80211_set_key: ifindex=4 alg=0 addr=(nil) key_idx=1
set_tx=0 seq_len=0 key_len=0
wpa_driver_nl80211_set_key: ifindex=4 alg=0 addr=(nil) key_idx=2
set_tx=0 seq_len=0 key_len=0
wpa_driver_nl80211_set_key: ifindex=4 alg=0 addr=(nil) key_idx=3
set_tx=0 seq_len=0 key_len=0
Using interface wlan5 with hwaddr 00:12:0e:b9:2d:31 and ssid 'rt3070ap_g2'
nl80211: Set beacon (beacon_set=0)
wlan5: Setup of interface done.
RTM_NEWLINK: operstate=0 ifi_flags=0x1002 ()
RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan5' added
Unknown event 5
RTM_NEWLINK: operstate=0 ifi_flags=0x1002 ()
RTM_NEWLINK, IFLA_IFNAME: Interface 'mon.wlan5' added
Unknown event 5
RTM_NEWLINK: operstate=0 ifi_flags=0x11043 ([UP][RUNNING][LOWER_UP])
RTM_NEWLINK, IFLA_IFNAME: Interface 'mon.wlan5' added
Unknown event 5
RTM_NEWLINK: operstate=0 ifi_flags=0x11003 ([UP][LOWER_UP])
RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan5' added
Unknown event 5
RTM_NEWLINK: operstate=0 ifi_flags=0x11043 ([UP][RUNNING][LOWER_UP])
RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan5' added
Unknown event 5
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
mgmt::auth
authentication: STA=00:12:0e:b2:ac:79 auth_alg=0 auth_transaction=1
status_code=0 wep=0
New STA
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: authentication OK (open system)
wlan5: STA 00:12:0e:b2:ac:79 MLME:
MLME-AUTHENTICATE.indication(00:12:0e:b2:ac:79, OPEN_SYSTEM)
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-DELETEKEYS.request(00:12:0e:b2:ac:79)
authentication reply: STA=00:12:0e:b2:ac:79 auth_alg=0
auth_transaction=2 resp=0 (IE len=0)
mgmt::proberesp cb
mgmt::assoc_req
association request: STA=00:12:0e:b2:ac:79 capab_info=0x401 listen_interval=3
unknown vendor specific information element ignored (vendor OUI 00:0c:43 len=7)
new AID 1
nl80211: Set beacon (beacon_set=1)
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: association OK (aid 1)
mgmt::auth cb
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: authenticated
Data/PS-poll frame from not associated STA 00:12:0e:b2:ac:79
mgmt::assoc_resp cb
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: associated (aid 1)
AP-STA-CONNECTED 00:12:0e:b2:ac:79
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-ASSOCIATE.indication(00:12:0e:b2:ac:79)
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-DELETEKEYS.request(00:12:0e:b2:ac:79)
wlan5: STA 00:12:0e:b2:ac:79 RADIUS: starting accounting session
4D80E204-00000000
nl80211: Event message available
nl80211: Ignored unknown event (cmd=19)
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
unknown mgmt cb frame subtype 10
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
mgmt::proberesp cb
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
mgmt::proberesp cb
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
STA 00:01:e3:b7:cd:8b sent probe request for broadcast SSID
mgmt::proberesp cb
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
mgmt::proberesp cb
mgmt::auth
authentication: STA=00:12:0e:b2:ac:79 auth_alg=0 auth_transaction=1
status_code=0 wep=0
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: authentication OK (open system)
wlan5: STA 00:12:0e:b2:ac:79 MLME:
MLME-AUTHENTICATE.indication(00:12:0e:b2:ac:79, OPEN_SYSTEM)
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-DELETEKEYS.request(00:12:0e:b2:ac:79)
authentication reply: STA=00:12:0e:b2:ac:79 auth_alg=0
auth_transaction=2 resp=0 (IE len=0)
mgmt::proberesp cb
mgmt::assoc_req
association request: STA=00:12:0e:b2:ac:79 capab_info=0x401 listen_interval=3
unknown vendor specific information element ignored (vendor OUI 00:0c:43 len=7)
old AID 1
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: association OK (aid 1)
mgmt::auth cb
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: authenticated
mgmt::assoc_resp cb
wlan5: STA 00:12:0e:b2:ac:79 IEEE 802.11: associated (aid 1)
AP-STA-CONNECTED 00:12:0e:b2:ac:79
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-ASSOCIATE.indication(00:12:0e:b2:ac:79)
wlan5: STA 00:12:0e:b2:ac:79 MLME: MLME-DELETEKEYS.request(00:12:0e:b2:ac:79)
wlan5: STA 00:12:0e:b2:ac:79 RADIUS: starting accounting session
4D80E204-00000001
nl80211: Event message available
nl80211: Ignored unknown event (cmd=19)
STA 00:01:e3:ff:2a:17 sent probe request for broadcast SSID
STA 00:01:e3:ff:2a:17 sent probe request for broadcast SSID
STA 00:01:e3:ff:2a:17 sent probe request for broadcast SSID
mgmt::proberesp cb
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:01:e3:a0:75:ea sent probe request for broadcast SSID
STA 00:01:e3:a0:75:ea sent probe request for broadcast SSID
mgmt::proberesp cb
mgmt::proberesp cb

#-----------------------------------------------------

The last things I get when it stops working...

#-----------------------------------------------------
STA 00:25:cf:d6:c1:b4 sent probe request for broadcast SSID
STA 00:25:cf:d6:c1:b4 sent probe request for broadcast SSID
mgmt::proberesp cb
STA 00:25:cf:d6:c1:b4 sent probe request for broadcast SSID
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:12:0e:b2:ac:79 sent probe request for broadcast SSID
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
mgmt::proberesp cb
mgmt::proberesp cb
STA 00:01:e3:a0:75:ea sent probe request for broadcast SSID
STA 00:01:e3:a0:75:ea sent probe request for broadcast SSID
STA 00:01:e3:a0:75:ea sent probe request for broadcast SSID
STA 00:12:0e:b2:ac:79 sent probe request for broadcast SSID
STA 00:12:0e:b2:ac:79 sent probe request for our SSID
#-----------------------------------------------------

At syslog, i get:
#-----------------------------------------------------
Mar 16 16:15:16 LS817 dhcpd: DHCPREQUEST for 192.168.111.247
(192.168.111.33) from 00:12:0e:b2:ac:79 (DE1-03-003-3400) via wlan5
Mar 16 16:15:16 LS817 dhcpd: DHCPACK on 192.168.111.247 to
00:12:0e:b2:ac:79 (DE1-03-003-3400) via wlan5
Mar 16 16:15:16 LS817 dhcpd: DHCPREQUEST for 192.168.111.247
(192.168.111.33) from 00:12:0e:b2:ac:79 (DE1-03-003-3400) via wlan5
Mar 16 16:15:16 LS817 dhcpd: DHCPACK on 192.168.111.247 to
00:12:0e:b2:ac:79 (DE1-03-003-3400) via wlan5
Mar 16 16:15:33 LS817 dhcpd: DHCPINFORM from 192.168.111.247 via wlan5
Mar 16 16:15:33 LS817 dhcpd: DHCPACK to 192.168.111.247
(00:12:0e:b2:ac:79) via wlan5
Mar 16 16:15:33 LS817 dhcpd: DHCPINFORM from 192.168.111.247 via wlan5
Mar 16 16:15:33 LS817 dhcpd: DHCPACK to 192.168.111.247
(00:12:0e:b2:ac:79) via wlan5
Mar 16 16:19:26 LS817 smbd[2657]: [2011/03/16 16:19:26, 0]
../source/lib/util_sock.c:read_socket_data(384)
Mar 16 16:19:26 LS817 smbd[2657]: read_socket_data: recv failure for
4. Error = Connection reset by peer
#-----------------------------------------------------

But as said, I don't think hostapd is the problem, I suppose it has to
do with the driver or the firmware.

If someone has the updated firmware, please send it to me, i'd appreciate it.

Some other info:

When this big file transfer fails, my ssh connections break.
When configured as ad-hoc mode, it won't allow to turn off power
savings (iwconfig wlan5 power off <-- fails)

What else can I do? How can I get more debug information about what's happening?

Best regards,
--
Juan Carlos Garza


2011-03-18 17:12:29

by Johannes Stezenbach

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Juan Carlos,

On Fri, Mar 18, 2011 at 04:23:15PM +0100, Juan Carlos Garza wrote:
> I applied the patches (manually), and tested the stick.
>
> The transfer of big loads now is successful. The
> "rt2800_txdone_entry_check:" warnings are still there, but they are
> less frequent (just like in the example i gave you with the laptop
> where it succeeded with the unpatched driver), some 5 warnings every
> 1, 2 or 3 seconds.

Thanks for testing! The occational "tx status missed" is unavoidable
due to hardware limitations. My patches reduce the number of them,
but more importantly they fix a few issues with TX (status) timeout handling.
(IIRC false positives in TX timeout check, and fluash would wait for
TX queue empty which would never happen without the timer to reap
the status queue.)

I tested a lot with these patches and they work stable for me, however I
must admit I'm not sure why they help in your case (i.e. why does
bulk transfer stall without these patches?).


Johannes

2011-03-18 19:13:45

by Johannes Stezenbach

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

On Fri, Mar 18, 2011 at 06:24:56PM +0100, Juan Carlos Garza wrote:
> On Fri, Mar 18, 2011 at 5:56 PM, Johannes Stezenbach <[email protected]> wrote:
> > On Fri, Mar 18, 2011 at 05:15:04PM +0100, Ivo Van Doorn wrote:
> >> I have to do a performance test to see if there are any issues remaining,
> >> but so far all those patches resulted in poorer performance (reduced
> >> association successes).
> >
> > IIRC you did no report any newer test results after
> > http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/003070.html
>
> I did get once or twice a warning saying:
> Queue 14 failed to flush, and I think it did not work afterwards...

With my patches applied? That's not good. I hope I can find some
time next week to retest with a current wireless-testing tree.

> I do not need to associate, as I use the Access Point rather than a
> Station. Clients could associate with the access point without
> problems. But this patch might bring more stability... can someone
> give me the path to the experimental branch git repository?

http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git

Please be aware that rt2800usb AP currently does not work with
power saving stations, i.e. you have to disable power saving
on the stations (iwconfig wlan0 power off). Which you
can't on some mobile devices...

(And IIRC rt2800usb stations also still have issues with power saving.)

I was working on a patch for AP mode but I ran out of time and got sucked
into other projects. There is a broken half-baked patch
in rt2x00/experimental which needs to be reverted, please
no not use.
http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=66045e31c8475f69178aea0ef650e7e087929d62
You can find some recent discussion about it in the
rt2x00-users archives.


Johannes

Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Johannes,

On Fri, Mar 18, 2011 at 8:13 PM, Johannes Stezenbach <[email protected]> wrote:
> On Fri, Mar 18, 2011 at 06:24:56PM +0100, Juan Carlos Garza wrote:
>> On Fri, Mar 18, 2011 at 5:56 PM, Johannes Stezenbach <[email protected]> wrote:
>> > On Fri, Mar 18, 2011 at 05:15:04PM +0100, Ivo Van Doorn wrote:
>> >> I have to do a performance test to see if there are any issues remaining,
>> >> but so far all those patches resulted in poorer performance (reduced
>> >> association successes).
>> >
>> > IIRC you did no report any newer test results after
>> > http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/003070.html
>>
>> I did get once or twice a warning saying:
>> Queue 14 failed to flush, and I think it did not work afterwards...

I tried to reproduce it today (the warning) and couldn't. I think I
got that warning after loading the unpatched driver, doing a transfer
(and thus stalling it) and then loading the patched driver. So
basically we can ignore that I wrote that.

I will report anyother problems that I might find.

>
> With my patches applied? ?That's not good. ?I hope I can find some
> time next week to retest with a current wireless-testing tree.
>
>> I do not need to associate, as I use the Access Point rather than a
>> Station. Clients could associate with the access point without
>> problems. But this patch might bring more stability... can someone
>> give me the path to the experimental branch git repository?
>
> http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git
>
> Please be aware that rt2800usb AP currently does not work with
> power saving stations, i.e. you have to disable power saving
> on the stations (iwconfig wlan0 power off). ?Which you
> can't on some mobile devices...
>
> (And IIRC rt2800usb stations also still have issues with power saving.)
>
> I was working on a patch for AP mode but I ran out of time and got sucked
> into other projects. ?There is a broken half-baked patch
> in rt2x00/experimental which needs to be reverted, please
> no not use.
> http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=66045e31c8475f69178aea0ef650e7e087929d62
> You can find some recent discussion about it in the
> rt2x00-users archives.
>
>
> Johannes
>


Best Regards,
Juan Carlos

2011-03-17 20:09:13

by Helmut Schaa

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Am Donnerstag, 17. M?rz 2011 schrieb Juan Carlos Garza:
> Warning - TX status report missed for queue 0 entry 42
> Mar 17 17:10:26 LS817 kernel: phy0 -> rt2x00queue_flush_queue: Warning
> - Queue 0 failed to flush

Looks as if some tx status reports got lost and that triggered the
watchdog. There are some experimental patches in the rt2x00 experimental
tree ([1], [2], [3] and [4]) that might mitigate some of these issues.

Mind to try these out and report back if they improve the behavior
under load?

Thanks,
Helmut

[1] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=878a2bbc20100d8bccf84cc058373fe7de2e6501
[2] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=4f3ab1e88d8b5ce4852d075016ca784a00383452
[3] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=c8cb3a0af064fb5d9cbbaa16bd2f308ba3b90ceb
[4] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=66b096e6ad64f718425d2de9a70d82ba187d7db4

2011-03-16 17:30:45

by Walter Goldens

[permalink] [raw]
Subject: Re: rt2800usb stops working with big file transfers in AP and IBSS

> Hello
>
> We have some Ralink RT3071 devices (Delock 88524) and we
> need to
> configure them either as Ad-Hoc or Access Point. In both

Hi,

I have both rt3070 & rt3071 USB dongles, they are notoriously unstable with rt2800usb because of the massive packet loss and duplicate packets - an issue which has not found its solution for over an year. I believe the problem stems from the chip's DMA irregularities.

I think this is exactly why you're experiencing transfer problems, due to packet losses. When you're connected, please try and ping your peer or gateway and confirm if you experience duplicate (DUP!) and/or packet losses as well.

Walter




Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

On Fri, Mar 18, 2011 at 5:56 PM, Johannes Stezenbach <[email protected]> wrote:
> Hi Ivo,
>
> On Fri, Mar 18, 2011 at 05:15:04PM +0100, Ivo Van Doorn wrote:
>> On Fri, Mar 18, 2011 at 4:42 PM, Helmut Schaa
>> <[email protected]> wrote:
>> > Thanks for testing Juan.
>> >
>> > Am Freitag, 18. M?rz 2011 schrieb Juan Carlos Garza:
>> >> I applied the patches (manually), and tested the stick.
>> >>
>> >> The transfer of big loads now is successful.
>> >
>> > Ivo, Johannes, are there any issues left with the async tx status
>> > patches for rt2800usb (in the experimental branch) as they seem to
>> > lower the chance for missed tx status reports.
>>
>> I have to do a performance test to see if there are any issues remaining,
>> but so far all those patches resulted in poorer performance (reduced
>> association successes).
>
> IIRC you did no report any newer test results after
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/003070.html

I did get once or twice a warning saying:
Queue 14 failed to flush, and I think it did not work afterwards...

I do not need to associate, as I use the Access Point rather than a
Station. Clients could associate with the access point without
problems. But this patch might bring more stability... can someone
give me the path to the experimental branch git repository?

> (I think this change was merged into one of the other patches in rt2x00/experimental)
>
> For me association works fast and reliable with these patches, but I
> did not have time to test with the wpa_supplicant from
> your ros.org code base.
>
> Without the fix above it is clear why association would be unreliable.
>
>
> Johannes
>

Regards
--
Juan Carlos

Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Helmut,

On Thu, Mar 17, 2011 at 1:16 PM, Helmut Schaa
<[email protected]> wrote:
> Am Mittwoch, 16. M?rz 2011 schrieb Juan Carlos Garza:
>> When configured as ad-hoc mode, it won't allow to turn off power
>> savings (iwconfig wlan5 power off <-- fails)
>
> AdHoc powersave is not supported and as such is never enabled.
>
>> What else can I do? How can I get more debug information about what's happening?
>
> Build rt2x00 with CONFIG_RT2X00_DEBUG and attach your kernel log here
> after reproducing this issue please.

The log...
I basically connect the Ralink dongle (or power it), configure its IP,
start DHCP server and HostAPD without authentication and then on the
client side, I connect via a stick (Atheros AR9170) to a windows
machine and try to transfer a 508 MByte file from the Access Point to
the Windows machine via drag and drop in a shared folder in Samba
Server. The huge bunch of warnings come before it completely stops
transmitting. Then some time later I shut down HostAPD.


Mar 17 16:52:30 LS817 kernel: usb 1-3: new high speed USB device using
ehci_hcd and address 6
Mar 17 16:52:30 LS817 kernel: usb 1-3: configuration #1 chosen from 1 choice
Mar 17 16:52:30 LS817 kernel: phy0 -> rt2x00_set_chip: Info - Chipset
detected - rt: 3070, rf: 0005, rev: 0201.
Mar 17 16:52:30 LS817 kernel: ieee80211 phy0: Selected rate control
algorithm 'minstrel_ht'
Mar 17 16:54:59 LS817 kernel: usbcore: deregistering interface driver rt2800usb
Mar 17 16:55:00 LS817 kernel: pm_qos_param: cpu_dma_latency deinit failed
Mar 17 16:55:02 LS817 kernel: sysfs: duplicate filename
'cpu_dma_latency' can not be created
Mar 17 16:55:02 LS817 kernel: WARNING: at fs/sysfs/dir.c:424 sysfs_add_one()
Mar 17 16:55:02 LS817 kernel: Pid: 2708, comm: insmod Tainted: P
2.6.24_atom-atom-x86_586 #29
Mar 17 16:55:02 LS817 kernel: [<c01b19c8>] sysfs_add_one+0x54/0xb8
Mar 17 16:55:02 LS817 kernel: [<c01b1e9b>] create_dir+0x3c/0x6c
Mar 17 16:55:02 LS817 kernel: [<c01b1ef8>] sysfs_create_dir+0x2d/0x40
Mar 17 16:55:02 LS817 kernel: [<c0245c55>] kobject_add+0xe9/0x190
Mar 17 16:55:02 LS817 kernel: [<c0245b59>] kobject_set_name+0x81/0x94
Mar 17 16:55:02 LS817 kernel: [<c02ae39e>] device_add+0x91/0x540
Mar 17 16:55:02 LS817 kernel: [<c0245944>] kobject_init+0x29/0x37
Mar 17 16:55:02 LS817 kernel: [<c02aebb7>] device_create+0x7a/0x9a
Mar 17 16:55:02 LS817 kernel: [<c029cbca>] misc_register+0xc5/0xfe
Mar 17 16:55:02 LS817 kernel: [<e0a6512b>]
compat_pm_qos_power_init+0xe/0x70 [compat]
Mar 17 16:55:02 LS817 kernel: [<e0869008>] compat_init+0x8/0x24 [compat]
Mar 17 16:55:02 LS817 kernel: [<c014642b>] sys_init_module+0x17c4/0x189f
Mar 17 16:55:02 LS817 kernel: [<c0178355>] do_sync_read+0xc7/0x10a
Mar 17 16:55:02 LS817 kernel: [<c0244c41>] _atomic_dec_and_lock+0x2d/0x4c
Mar 17 16:55:02 LS817 kernel: [<c0179549>] __fput+0x11a/0x144
Mar 17 16:55:02 LS817 kernel: [<c0104ff2>] syscall_call+0x7/0xb
Mar 17 16:55:02 LS817 kernel: =======================
Mar 17 16:55:02 LS817 kernel: kobject_add failed for cpu_dma_latency
with -EEXIST, don't try to register things with the same name in the
same directory.
Mar 17 16:55:02 LS817 kernel: Pid: 2708, comm: insmod Tainted: P
2.6.24_atom-atom-x86_586 #29
Mar 17 16:55:02 LS817 kernel: [<c0245cca>] kobject_add+0x15e/0x190
Mar 17 16:55:02 LS817 kernel: [<c0245b59>] kobject_set_name+0x81/0x94
Mar 17 16:55:02 LS817 kernel: [<c02ae39e>] device_add+0x91/0x540
Mar 17 16:55:02 LS817 kernel: [<c0245944>] kobject_init+0x29/0x37
Mar 17 16:55:02 LS817 kernel: [<c02aebb7>] device_create+0x7a/0x9a
Mar 17 16:55:02 LS817 kernel: [<c029cbca>] misc_register+0xc5/0xfe
Mar 17 16:55:02 LS817 kernel: [<e0a6512b>]
compat_pm_qos_power_init+0xe/0x70 [compat]
Mar 17 16:55:02 LS817 kernel: [<e0869008>] compat_init+0x8/0x24 [compat]
Mar 17 16:55:02 LS817 kernel: [<c014642b>] sys_init_module+0x17c4/0x189f
Mar 17 16:55:02 LS817 kernel: [<c0178355>] do_sync_read+0xc7/0x10a
Mar 17 16:55:02 LS817 kernel: [<c0244c41>] _atomic_dec_and_lock+0x2d/0x4c
Mar 17 16:55:02 LS817 kernel: [<c0179549>] __fput+0x11a/0x144
Mar 17 16:55:02 LS817 kernel: [<c0104ff2>] syscall_call+0x7/0xb
Mar 17 16:55:02 LS817 kernel: =======================
Mar 17 16:55:02 LS817 kernel: pm_qos_param: cpu_dma_latency setup failed
Mar 17 16:55:02 LS817 kernel: Compat-wireless backport release:
compat-wireless-2011-01-31-25-g9d8e201
Mar 17 16:55:02 LS817 kernel: Backport based on linux-next.git next-20110311
Mar 17 16:55:02 LS817 kernel: Calling CRDA to update world regulatory domain
Mar 17 16:55:02 LS817 kernel: phy0 -> rt2x00_set_chip: Info - Chipset
detected - rt: 3070, rf: 0005, rev: 0201.
Mar 17 16:55:02 LS817 kernel: ieee80211 phy0: Selected rate control
algorithm 'minstrel_ht'
Mar 17 16:55:02 LS817 kernel: usbcore: registered new interface driver rt2800usb
Mar 17 16:55:05 LS817 kernel: phy0 -> rt2x00lib_request_firmware: Info
- Loading firmware file 'rt2870.bin'.
Mar 17 16:55:05 LS817 kernel: phy0 -> rt2x00lib_request_firmware: Info
- Firmware detected - version: 0.236.
Mar 17 16:55:06 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 0 - CWmin: 3, CWmax: 4, Aifs: 2, TXop: 102.
Mar 17 16:55:06 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 1 - CWmin: 4, CWmax: 5, Aifs: 2, TXop: 188.
Mar 17 16:55:06 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 2 - CWmin: 5, CWmax: 10, Aifs: 3, TXop: 0.
Mar 17 16:55:06 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 3 - CWmin: 5, CWmax: 10, Aifs: 7, TXop: 0.
Mar 17 16:55:06 LS817 kernel: ADDRCONF(NETDEV_UP): wlan5: link is not ready
Mar 17 16:55:15 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 0 - CWmin: 3, CWmax: 4, Aifs: 2, TXop: 102.
Mar 17 16:55:15 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 1 - CWmin: 4, CWmax: 5, Aifs: 2, TXop: 188.
Mar 17 16:55:15 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 2 - CWmin: 5, CWmax: 10, Aifs: 3, TXop: 0.
Mar 17 16:55:15 LS817 kernel: phy0 -> rt2x00mac_conf_tx: Info -
Configured TX queue 3 - CWmin: 5, CWmax: 10, Aifs: 7, TXop: 0.
Mar 17 16:55:25 LS817 kernel: wlan5: no IPv6 routers present
Mar 17 16:57:23 LS817 kernel: phy0 -> rt2x00usb_watchdog_tx_status:
Warning - TX queue 0 status timed out, invoke forced tx handler
Mar 17 16:57:34 LS817 last message repeated 2 times
Mar 17 16:58:37 LS817 last message repeated 6 times
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 7
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 8
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 12
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 55
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 56
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 55
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 56
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 43
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 44
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 46
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 47
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 29
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 16:58:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 55
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 56
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 10
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 16
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 17
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 47
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 48
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 52
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 53
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 34
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 35
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 28
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 29
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 41
Mar 17 16:58:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 42
Mar 17 17:10:26 LS817 kernel: phy0 -> rt2x00queue_flush_queue: Warning
- Queue 0 failed to flush
Mar 17 17:10:26 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:10:28 LS817 kernel: phy0 -> rt2x00queue_flush_queue: Warning
- Queue 0 failed to flush

I then repeated the whole process but I connected it to a laptop with
an Intel 3945ABG NIC and the transfer was successful, there I did get
a lot of warning messages, but the difference is that here I got 4
warnings every 2 or 3 seconds, not a whole bunch in just 1 second.

Mar 17 17:13:45 LS817 kernel: phy0 -> rt2x00usb_watchdog_tx_status:
Warning - TX queue 0 status timed out, invoke forced tx handler
Mar 17 17:13:56 LS817 last message repeated 10 times
Mar 17 17:17:26 LS817 kernel: phy0 -> rt2x00usb_watchdog_tx_status:
Warning - TX queue 0 status timed out, invoke forced tx handler
Mar 17 17:17:51 LS817 kernel: phy0 -> rt2x00usb_watchdog_tx_status:
Warning - TX queue 0 status timed out, invoke forced tx handler
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:17:59 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:02 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 1
Mar 17 17:18:02 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 2
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 48
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 12
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 13
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:04 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 17:18:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:22 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:22 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:22 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:25 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 48
Mar 17 17:18:27 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 63
Mar 17 17:18:27 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:27 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:27 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:27 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:30 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 41
Mar 17 17:18:30 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 42
Mar 17 17:18:30 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:30 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:30 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 47
Mar 17 17:18:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 48
Mar 17 17:18:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 44
Mar 17 17:18:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:18:51 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:18:51 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:18:51 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:09 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 22
Mar 17 17:19:11 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:11 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:11 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 17:19:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 45
Mar 17 17:19:17 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 47
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 30
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:24 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:26 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:26 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:26 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:28 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:28 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:28 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:34 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 46
Mar 17 17:19:37 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 63
Mar 17 17:19:37 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:39 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 11
Mar 17 17:19:39 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 12
Mar 17 17:19:39 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:39 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:39 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 12
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 55
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 56
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:41 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:44 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:19:49 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 44
Mar 17 17:19:49 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 46
Mar 17 17:19:52 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 14
Mar 17 17:19:52 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 15
Mar 17 17:19:52 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:19:52 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:19:52 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:20:03 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 24
Mar 17 17:20:03 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 25
Mar 17 17:20:03 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 27
Mar 17 17:20:03 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 28
Mar 17 17:20:03 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 30
Mar 17 17:20:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:20:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 1
Mar 17 17:20:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 3
Mar 17 17:20:15 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 4
Mar 17 17:20:22 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 54
Mar 17 17:20:22 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 55
Mar 17 17:20:32 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:20:34 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 57
Mar 17 17:20:34 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:20:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:20:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:20:43 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:20:50 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:20:50 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:20:50 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:20:58 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 56
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 57
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 58
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 59
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 61
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 62
Mar 17 17:21:10 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 0
Mar 17 17:21:12 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 17:21:12 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 17:21:14 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 46
Mar 17 17:21:14 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 47
Mar 17 17:21:14 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 49
Mar 17 17:21:14 LS817 kernel: phy0 -> rt2800_txdone_entry_check:
Warning - TX status report missed for queue 0 entry 50
Mar 17 17:21:40 LS817 kernel: phy0 -> rt2x00usb_watchdog_tx_status:
Warning - TX queue 0 status timed out, invoke forced tx handler

As it was successful, I did not need to kill HostAPD, and connected
with the Atheros stick again and this time, the transfer lasted a bit
longer, but the warning messages were as frequent as the first time
and then it stopped.


Best Regards,

Juan Carlos

2011-03-18 17:17:46

by Johannes Stezenbach

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Ivo,

On Fri, Mar 18, 2011 at 05:15:04PM +0100, Ivo Van Doorn wrote:
> On Fri, Mar 18, 2011 at 4:42 PM, Helmut Schaa
> <[email protected]> wrote:
> > Thanks for testing Juan.
> >
> > Am Freitag, 18. M?rz 2011 schrieb Juan Carlos Garza:
> >> I applied the patches (manually), and tested the stick.
> >>
> >> The transfer of big loads now is successful.
> >
> > Ivo, Johannes, are there any issues left with the async tx status
> > patches for rt2800usb (in the experimental branch) as they seem to
> > lower the chance for missed tx status reports.
>
> I have to do a performance test to see if there are any issues remaining,
> but so far all those patches resulted in poorer performance (reduced
> association successes).

IIRC you did no report any newer test results after
http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/003070.html
(I think this change was merged into one of the other patches in rt2x00/experimental)

For me association works fast and reliable with these patches, but I
did not have time to test with the wpa_supplicant from
your ros.org code base.

Without the fix above it is clear why association would be unreliable.


Johannes

2011-03-18 16:15:05

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi,

On Fri, Mar 18, 2011 at 4:42 PM, Helmut Schaa
<[email protected]> wrote:
> Thanks for testing Juan.
>
> Am Freitag, 18. M?rz 2011 schrieb Juan Carlos Garza:
>> I applied the patches (manually), and tested the stick.
>>
>> The transfer of big loads now is successful.
>
> Ivo, Johannes, are there any issues left with the async tx status
> patches for rt2800usb (in the experimental branch) as they seem to
> lower the chance for missed tx status reports.

I have to do a performance test to see if there are any issues remaining,
but so far all those patches resulted in poorer performance (reduced
association successes).

Ivo

2011-03-18 18:07:21

by Helmut Schaa

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Johannes,

Am Freitag, 18. M?rz 2011 schrieb Johannes Stezenbach:
> On Fri, Mar 18, 2011 at 04:23:15PM +0100, Juan Carlos Garza wrote:
> > I applied the patches (manually), and tested the stick.
> >
> > The transfer of big loads now is successful. The
> > "rt2800_txdone_entry_check:" warnings are still there, but they are
> > less frequent (just like in the example i gave you with the laptop
> > where it succeeded with the unpatched driver), some 5 warnings every
> > 1, 2 or 3 seconds.
>
> Thanks for testing! The occational "tx status missed" is unavoidable
> due to hardware limitations. My patches reduce the number of them,
> but more importantly they fix a few issues with TX (status) timeout handling.
> (IIRC false positives in TX timeout check, and fluash would wait for
> TX queue empty which would never happen without the timer to reap
> the status queue.)
>
> I tested a lot with these patches and they work stable for me, however I
> must admit I'm not sure why they help in your case (i.e. why does
> bulk transfer stall without these patches?).

Just an assumption: In rt2800pci I had the problem that the tx status register
sometimes suffered from overflows. And I was able to avoid the overflow by
reading the TX_STA_FIFO register fast enough (in hard irq context).

And I guess your patch also changed the timing of TX_STA_FIFO reads is
rt2800usb and thus reduces the number of overflows.

However, this is just a shot in the dark.

Helmut

2011-03-17 12:17:47

by Helmut Schaa

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Am Mittwoch, 16. M?rz 2011 schrieb Juan Carlos Garza:
> When configured as ad-hoc mode, it won't allow to turn off power
> savings (iwconfig wlan5 power off <-- fails)

AdHoc powersave is not supported and as such is never enabled.

> What else can I do? How can I get more debug information about what's happening?

Build rt2x00 with CONFIG_RT2X00_DEBUG and attach your kernel log here
after reproducing this issue please.

Helmut

2011-03-18 15:44:17

by Helmut Schaa

[permalink] [raw]
Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Thanks for testing Juan.

Am Freitag, 18. M?rz 2011 schrieb Juan Carlos Garza:
> I applied the patches (manually), and tested the stick.
>
> The transfer of big loads now is successful.

Ivo, Johannes, are there any issues left with the async tx status
patches for rt2800usb (in the experimental branch) as they seem to
lower the chance for missed tx status reports.

Helmut

Subject: Re: [rt2x00-users] rt2800usb stops working with big file transfers in AP and IBSS

Hi Helmut,

Thanks a lot for your help!

I applied the patches (manually), and tested the stick.

The transfer of big loads now is successful. The
"rt2800_txdone_entry_check:" warnings are still there, but they are
less frequent (just like in the example i gave you with the laptop
where it succeeded with the unpatched driver), some 5 warnings every
1, 2 or 3 seconds.

I was able to transfer a 512 MByte file from a Linux 2.6.24 system
running an Intel Atom processor with a rt3071 USB stick to the
follwing NICs:

Intel 3945ABG running Windows XP 32 bit
Realtek rtl8188cus running on Windows XP 32 bit
Dell 1397 running Windows 7 64 bit
Broadcom 4306 running Linux
Intel 4965 running Windows XP 32 bit
Ralink rt3070 running Windows XP 32 bit.
Atheros AR9170 running Windows XP 64 bit and 32 bit.

Once again, thanks a lot for your support, and I'm glad to be able to
test the experimental patches.

Best regards,

Juan Carlos


On Thu, Mar 17, 2011 at 9:07 PM, Helmut Schaa
<[email protected]> wrote:
> Am Donnerstag, 17. M?rz 2011 schrieb Juan Carlos Garza:
>> Warning - TX status report missed for queue 0 entry 42
>> Mar 17 17:10:26 LS817 kernel: phy0 -> rt2x00queue_flush_queue: Warning
>> - Queue 0 failed to flush
>
> Looks as if some tx status reports got lost and that triggered the
> watchdog. There are some experimental patches in the rt2x00 experimental
> tree ([1], [2], [3] and [4]) that might mitigate some of these issues.
>
> Mind to try these out and report back if they improve the behavior
> under load?
>
> Thanks,
> Helmut
>
> [1] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=878a2bbc20100d8bccf84cc058373fe7de2e6501
> [2] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=4f3ab1e88d8b5ce4852d075016ca784a00383452
> [3] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=c8cb3a0af064fb5d9cbbaa16bd2f308ba3b90ceb
> [4] http://git.kernel.org/?p=linux/kernel/git/ivd/rt2x00.git;a=commit;h=66b096e6ad64f718425d2de9a70d82ba187d7db4
>



--
________________________________
M.Sc. Juan Carlos Garza Fern?ndez
Chistophstr. 14
70178 Stuttgart, Deutschland
+49 711 4080769
+49 176 21947676
[email protected]
________________________________