Closed kristrev closed 8 years ago
[edit] i stand corrected. same issue is now showing at my router as well: [160292.464501] br-lan: port 3(wlan0) entered forwarding state [249789.640613] ieee80211 phy0: check ba result error 1 [249789.645643] ieee80211 phy0: ampdu start error code: -22 [249789.680633] ieee80211 phy0: check ba result error 1 [249789.685626] ieee80211 phy0: ampdu start error code: -22 [249789.730600] ieee80211 phy0: check ba result error 1 [249789.735586] ieee80211 phy0: ampdu start error code: -22 [249789.770602] ieee80211 phy0: check ba result error 1 [249789.775588] ieee80211 phy0: ampdu start error code: -22 [249789.810628] ieee80211 phy0: check ba result error 1 [249789.815620] ieee80211 phy0: ampdu start error code: -22 [249789.850601] ieee80211 phy0: check ba result error 1 [249789.855586] ieee80211 phy0: ampdu start error code: -22 [249789.890628] ieee80211 phy0: check ba result error 1 [249789.895621] ieee80211 phy0: ampdu start error code: -22 [249789.930625] ieee80211 phy0: check ba result error 1 [249789.935616] ieee80211 phy0: ampdu start error code: -22 [249789.970599] ieee80211 phy0: check ba result error 1 [249789.975584] ieee80211 phy0: ampdu start error code: -22 [249790.020597] ieee80211 phy0: check ba result error 1 [249790.025582] ieee80211 phy0: ampdu start error code: -22
DD-WRT v3.0-r28054 std (c) 2015 NewMedia-NET GmbH Release: 10/30/15
ASUS USB-AC53 802.11ac Wireless USB Adapter (192.168.1.194)
MAC 74:d0:2b:d0:1c:94
Nov 1 18:03:57 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: authenticated Nov 1 18:03:57 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: associated (aid 1) Nov 1 18:03:57 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 RADIUS: starting accounting session 00000005-00000000 Nov 1 18:03:57 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: pairwise key handshake completed (RSN) Nov 1 18:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA 20:aa:4b:3e:5e:39 WPA: group key handshake completed (RSN) Nov 1 18:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA be:a3:86:4b:61:ee WPA: group key handshake completed (RSN) Nov 1 18:06:55 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: group key handshake completed (RSN) Nov 1 18:07:45 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: authenticated Nov 1 18:07:45 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: associated (aid 1) Nov 1 18:07:45 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 RADIUS: starting accounting session 00000005-00000000 Nov 1 18:07:45 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: pairwise key handshake completed (RSN) Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.767529] ieee80211 phy1: check ba result error 1 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.772490] ieee80211 phy1: ampdu start error code: -22 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.807529] ieee80211 phy1: check ba result error 1 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.812544] ieee80211 phy1: ampdu start error code: -22 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.847462] ieee80211 phy1: check ba result error 1 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.852417] ieee80211 phy1: ampdu start error code: -22 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.877304] ieee80211 phy1: check ba result error 1 Nov 1 18:07:46 AC-DD-WRT kern.err kernel: [79272.882345] ieee80211 phy1: ampdu start error code: -22 Nov 1 18:08:02 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: authenticated Nov 1 18:08:02 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 IEEE 802.11: associated (aid 1) Nov 1 18:08:02 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 RADIUS: starting accounting session 00000005-00000000
Stil in mwlwifi driver 10.3.0.12
I've seen the same issue once using my laptop with a Intel Wireless AC-7265, i was using speedtest.net to test my connection at that time. Latency went trough the roof and the download speed was only about 1mbps. This was while using the trunk build of OpenWRT of 30 oct (r47280) with the 10.3.0.12 driver:
1 21:49:50 2015 daemon.info hostapd: wlan0: STA 60:57:18:28:72:c4 IEEE 802.11: authenticated Sun Nov 1 21:49:50 2015 daemon.info hostapd: wlan0: STA 60:57:18:28:72:c4 IEEE 802.11: associated (aid 1) Sun Nov 1 21:49:50 2015 daemon.info hostapd: wlan0: STA 60:57:18:28:72:c4 WPA: pairwise key handshake completed (RSN) Sun Nov 1 21:49:50 2015 daemon.info dnsmasq-dhcp[1533]: DHCPREQUEST(br-lan) 192.168.1.102 60:57:18:28:72:c4 Sun Nov 1 21:49:50 2015 daemon.info dnsmasq-dhcp[1533]: DHCPACK(br-lan) 192.168.1.102 60:57:18:28:72:c4 Dell-E5250 Sun Nov 1 21:49:51 2015 daemon.warn odhcpd[1060]: DHCPV6 CONFIRM IA_NA from 000456224406e6e6b57416bf76ea59272c29 on br-lan: not on-link fdf9:52ca:5c09::542/128 Sun Nov 1 21:49:52 2015 daemon.warn odhcpd[1060]: DHCPV6 SOLICIT IA_NA from 000456224406e6e6b57416bf76ea59272c29 on br-lan: ok fdf9:52ca:5c09::542/128 Sun Nov 1 21:49:53 2015 daemon.warn odhcpd[1060]: DHCPV6 REQUEST IA_NA from 000456224406e6e6b57416bf76ea59272c29 on br-lan: ok fdf9:52ca:5c09::542/128 Sun Nov 1 21:50:12 2015 daemon.info hostapd: wlan0: STA 60:57:18:28:72:c4 WPA: group key handshake completed (RSN) Sun Nov 1 21:50:12 2015 daemon.info hostapd: wlan0: STA 3c:a9:f4:02:e4:64 WPA: group key handshake completed (RSN) Sun Nov 1 21:50:12 2015 daemon.info hostapd: wlan0: STA a4:e4:b8:11:dd:af WPA: group key handshake completed (RSN) Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.717775] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.722774] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.757773] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.762751] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.807772] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.812690] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.847812] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.852824] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.887807] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.892795] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.927753] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.932748] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.967846] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21498.972858] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.007752] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.012751] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.047837] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.052835] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.087861] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.092773] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.127757] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.132763] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.167762] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.172762] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.207747] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.212738] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.247827] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.252745] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.287821] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:44 2015 kern.err kernel: [21499.292780] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.327760] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.332740] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.367817] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.372804] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.407781] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.412775] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.447789] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.452788] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.487772] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.492764] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.527856] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.532838] ieee80211 phy0: ampdu start error code: -22 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.567846] ieee80211 phy0: check ba result error 1 Sun Nov 1 21:50:45 2015 kern.err kernel: [21499.572835] ieee80211 phy0: ampdu start error code: -22
I've been having decent luck with the below (so far) -- just dropped the ssn reset closer to the stream start, and am not starting the stream unless the firmware says it's OK.
Driver is 10.3.0.12 and I'm still building against branch.
diff -ur original_CC_branch/mac80211.c updated_CC_branch/mac80211.c
--- original_CC_branch/mac80211.c 2015-10-29 00:20:51.000000000 -0500
+++ updated_CC_branch/mac80211.c 2015-11-01 15:18:15.509075000 -0600
@@ -593,59 +593,45 @@
case IEEE80211_AMPDU_RX_STOP:
break;
case IEEE80211_AMPDU_TX_START:
- /* By the time we get here the hw queues may contain outgoing
- * packets for this RA/TID that are not part of this BA
- * session. The hw will assign sequence numbers to these
- * packets as they go out. So if we query the hw for its next
- * sequence number and use that for the SSN here, it may end up
- * being wrong, which will lead to sequence number mismatch at
- * the recipient. To avoid this, we reset the sequence number
- * to O for the first MPDU in this BA stream.
- */
- *ssn = 0;
- if (!stream) {
- /* This means that somebody outside this driver called
- * ieee80211_start_tx_ba_session. This is unexpected
- * because we do our own rate control. Just warn and
- * move on.
- */
- stream = mwl_fwcmd_add_stream(hw, sta, tid);
- }
-
- if (!stream) {
- wiphy_warn(hw->wiphy, "no stream found\n");
- rc = -EBUSY;
- break;
- }
-
- stream->state = AMPDU_STREAM_IN_PROGRESS;
-
- /* Release the lock before we do the time consuming stuff */
+ /* If ampdu is not allowed, don't bother with stream setup */
spin_unlock_bh(&priv->stream_lock);
-
- /* Check if link is still valid */
if (!sta_info->is_ampdu_allowed) {
+ wiphy_warn(hw->wiphy, "ampdu not allowed\n");
+ rc = -EBUSY;
spin_lock_bh(&priv->stream_lock);
- mwl_fwcmd_remove_stream(hw, stream);
- spin_unlock_bh(&priv->stream_lock);
- wiphy_warn(hw->wiphy,
- "link is not valid now\n");
- return -EBUSY;
+ break;
}
- rc = mwl_fwcmd_check_ba(hw, stream, vif);
-
spin_lock_bh(&priv->stream_lock);
- if (rc) {
- mwl_fwcmd_remove_stream(hw, stream);
- wiphy_err(hw->wiphy,
- "ampdu start error code: %d\n", rc);
- rc = -EBUSY;
- break;
+ /* If stream doesn't exist, try to create it */
+ if (!stream) {
+ stream = mwl_fwcmd_add_stream(hw, sta, tid);
+ if (!stream) {
+ wiphy_warn(hw->wiphy, "no stream found\n");
+ rc = -EBUSY;
+ break;
+ }
}
- ieee80211_start_tx_ba_cb_irqsafe(vif, addr, tid);
+ /* If stream exists, reset the sequence number and then
+ check that the ba is working. If there is a problem,
+ remove the stream, but if OK, start it */
+ if (stream) {
+ *ssn = 0;
+ stream->state = AMPDU_STREAM_IN_PROGRESS;
+ spin_unlock_bh(&priv->stream_lock);
+ rc = mwl_fwcmd_check_ba(hw, stream, vif);
+ spin_lock_bh(&priv->stream_lock);
+ if (rc) {
+ mwl_fwcmd_remove_stream(hw, stream);
+ wiphy_err(hw->wiphy,
+ "ampdu start error code: %d\n", rc);
+ rc = -EBUSY;
+ break;
+ }
+ ieee80211_start_tx_ba_cb_irqsafe(vif, addr, tid);
+ }
break;
case IEEE80211_AMPDU_TX_STOP_CONT:
case IEEE80211_AMPDU_TX_STOP_FLUSH:
@BrainSlayer
My clients do stay up
Nov 1 20:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA be:a3:86:4b:61:ee WPA: group key handshake completed (RSN) Nov 1 20:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA 20:aa:4b:3e:5e:39 WPA: group key handshake completed (RSN) Nov 1 20:06:55 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: group key handshake completed (RSN)
Nov 1 21:00:00 AC-DD-WRT kern.info kernel: [89607.077378] dc.sh (28867): drop_caches: 3 Nov 1 21:01:22 AC-DD-WRT authpriv.info dropbear[24798]: Exit (root): Exited normally Nov 1 21:01:27 AC-DD-WRT authpriv.info dropbear[24019]: Exit (root): Exited normally
Nov 1 21:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA be:a3:86:4b:61:ee WPA: group key handshake completed (RSN) Nov 1 21:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA 20:aa:4b:3e:5e:39 WPA: group key handshake completed (RSN) Nov 1 21:06:55 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: group key handshake completed (RSN)
Nov 1 21:41:43 AC-DD-WRT authpriv.info dropbear[30335]: Child connection from 192.168.1.194:53620 Nov 1 21:41:44 AC-DD-WRT authpriv.notice dropbear[30335]: Pubkey auth succeeded for 'root' with key md5 dc:e8:48:e8:1c:d1:7d:c4:53:6b:07:ef:1a:06:86:96 from 192.168.1.194:53620 Nov 1 21:43:04 AC-DD-WRT authpriv.info dropbear[30335]: Exit (root): Exited normally Nov 1 22:00:00 AC-DD-WRT kern.info kernel: [93207.731440] dc.sh (30965): drop_caches: 3
Nov 1 22:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA be:a3:86:4b:61:ee WPA: group key handshake completed (RSN) Nov 1 22:06:55 AC-DD-WRT daemon.info hostapd: ath0: STA 20:aa:4b:3e:5e:39 WPA: group key handshake completed (RSN) Nov 1 22:06:55 AC-DD-WRT daemon.info hostapd: ath1: STA 74:d0:2b:d0:1c:94 WPA: group key handshake completed (RSN)
Thanks for all your information. BTW, can you let me know if the client still works well after these messages came out?
@yuhhaurlin: my experience; not without a reconnect. I believe Kristrev and Kazerwire wrote something similar as well.
Client will reconnect automatically, so that means client can continue to work after these messages came out? How soon to make this kind of problem happened? Only with specific clients?
@yuhhaurlin: with me after 3 days of usage, and with a mid 2012 mac-book air.
Thanks. The client can still work after these messages came out? I think I will modify FW to report correct failed reason to debug this run time problem.
@yuhhaurlin: More detailed errors from the firmware would be great!
I realize that you have to keep the actual firmware implementation private, but is there any chance of a little more documentation on the firmware <-> driver API at the same time? Most of it is obvious from fwcmd.c, but things like e.g "SetOptimizationLevel" or "LinkAdaptCsMode" is not (at least to me). That is, I understand that you can set a "level" and a "mode", but I have no idea what the firmware use these values for. Or even which values are valid. I'm not asking for any large manual. Just thinking of a small comment in fwcmd.c listing the supported values and some high level description of the assoociated behaviour. Just enough to be able to understand the difference.
I ask this because I assume the firmware error codes will be meaningless to us without some attached description. I understand that they will still be useful to you, but it is easier if we can make some sense out of the errors too, maybe correlating them with client quirks we know about.
And to answer your question: Yes, the client seems to work fine (for me) even when I see the occasional ba error messages. Looks like the driver handles this as it should, falling back until the command succeeds.
Thanks for your information. I have no right to come out this kind of document.
Yes, that is what I think. I will add more specific failed reason in FW for BA related commands to see if this error is reasonable.
ok, i'm seeing the issue here again (uptime 1 day), but i have so many clients active, that i'm not sure which one is the problem. is there any way to pinpoint that?
From: yuhhaurlin [mailto:notifications@github.com] Sent: Sunday, November 01, 2015 6:38 PM To: kaloz/mwlwifi Cc: gufus Subject: Re: [mwlwifi] ba/ampdu error with 10.3.0.12 (#41)
Yes.
The client still works well after these messages came out.
I get the error (only once in a while) using this: ASUS USB-AC53 802.11ac Wireless USB Adapter
Also I don't get any negative side effects with this error.
kern.err kernel: [ 5601.602534] ieee80211 phy0: ampdu start error code: -22 kern.err kernel: [ 5601.637635] ieee80211 phy0: check ba result error 1 kern.err kernel: [ 6222.253363] ieee80211 phy1: ampdu start error code: -22 kern.err kernel: [ 6222.298444] ieee80211 phy1: check ba result error 1
—
@johnnysl I think there is no need to know which client makes these messages came out. It looks like it is not a real bug. I will let FW to report clear error reason to reconfirm this. Thanks.
I'm also still seeing this on 10.3.0.12. I've tried tiremeat's patch to see if it helps. I don't know what clients are affected.
@notnyt ... it doesn't unfortunately
@TireMeat using your patch I'm not seeing any more ba errors, and a friend with the router reported better performance and less crashing. shrug maybe refine and submit a pull request if its worth it?
@notnyt ... that's great to hear. I tightened up the code a bit more - here are the highlights:
Below is the patch ... (what do you mean by submitting a pull request? how do i do that?)
--- original_10.3.0.12/mac80211.c 2015-10-29 00:20:51.000000000 -0500
+++ updated_10.3.0.12/mac80211.c 2015-11-05 00:07:39.398401000 -0600
@@ -593,63 +593,53 @@
case IEEE80211_AMPDU_RX_STOP:
break;
case IEEE80211_AMPDU_TX_START:
- /* By the time we get here the hw queues may contain outgoing
- * packets for this RA/TID that are not part of this BA
- * session. The hw will assign sequence numbers to these
- * packets as they go out. So if we query the hw for its next
- * sequence number and use that for the SSN here, it may end up
- * being wrong, which will lead to sequence number mismatch at
- * the recipient. To avoid this, we reset the sequence number
- * to O for the first MPDU in this BA stream.
- */
- *ssn = 0;
- if (!stream) {
- /* This means that somebody outside this driver called
- * ieee80211_start_tx_ba_session. This is unexpected
- * because we do our own rate control. Just warn and
- * move on.
- */
- stream = mwl_fwcmd_add_stream(hw, sta, tid);
- }
-
- if (!stream) {
- wiphy_warn(hw->wiphy, "no stream found\n");
- rc = -EBUSY;
- break;
- }
-
- stream->state = AMPDU_STREAM_IN_PROGRESS;
-
- /* Release the lock before we do the time consuming stuff */
+ /* If ampdu is not allowed, don't bother with stream setup */
spin_unlock_bh(&priv->stream_lock);
-
- /* Check if link is still valid */
if (!sta_info->is_ampdu_allowed) {
+ wiphy_warn(hw->wiphy, "ampdu not allowed\n");
+ rc = -EBUSY;
spin_lock_bh(&priv->stream_lock);
- mwl_fwcmd_remove_stream(hw, stream);
- spin_unlock_bh(&priv->stream_lock);
- wiphy_warn(hw->wiphy,
- "link is not valid now\n");
- return -EBUSY;
+ break;
}
- rc = mwl_fwcmd_check_ba(hw, stream, vif);
-
spin_lock_bh(&priv->stream_lock);
- if (rc) {
- mwl_fwcmd_remove_stream(hw, stream);
- wiphy_err(hw->wiphy,
- "ampdu start error code: %d\n", rc);
- rc = -EBUSY;
- break;
+ /* If stream does not exist, try to add it */
+ if (!stream) {
+ stream = mwl_fwcmd_add_stream(hw, sta, tid);
+ if (!stream) {
+ wiphy_warn(hw->wiphy, "no stream found\n");
+ rc = -EBUSY;
+ break;
+ }
}
- ieee80211_start_tx_ba_cb_irqsafe(vif, addr, tid);
+ /* If stream exists, check that the ba is working.
+ If the ba is not working, remove the added stream and exit.
+ If stream is OK, reset the sequence number just before
+ starting it */
+ if (stream) {
+ stream->state = AMPDU_STREAM_IN_PROGRESS;
+ spin_unlock_bh(&priv->stream_lock);
+ rc = mwl_fwcmd_check_ba(hw, stream, vif);
+ spin_lock_bh(&priv->stream_lock);
+ if (rc) {
+ mwl_fwcmd_remove_stream(hw, stream);
+ wiphy_err(hw->wiphy,
+ "ampdu start error code: %d\n", rc);
+ rc = -EBUSY;
+ break;
+ }
+ *ssn = 0;
+ ieee80211_start_tx_ba_cb_irqsafe(vif, addr, tid);
+ }
break;
case IEEE80211_AMPDU_TX_STOP_CONT:
case IEEE80211_AMPDU_TX_STOP_FLUSH:
case IEEE80211_AMPDU_TX_STOP_FLUSH_CONT:
+ /* If stream exists and active, flush it and destroy ba.
+ If stream exists but is not active, just remove it.
+ Finally issue stop_ba to complete. */
if (stream) {
if (stream->state == AMPDU_STREAM_ACTIVE) {
mwl_tx_del_ampdu_pkts(hw, sta, tid);
@@ -658,31 +648,38 @@
mwl_fwcmd_destroy_ba(hw, idx);
spin_lock_bh(&priv->stream_lock);
}
-
mwl_fwcmd_remove_stream(hw, stream);
+ ieee80211_stop_tx_ba_cb_irqsafe(vif, addr, tid);
}
-
- ieee80211_stop_tx_ba_cb_irqsafe(vif, addr, tid);
break;
case IEEE80211_AMPDU_TX_OPERATIONAL:
- if (WARN_ON(stream->state != AMPDU_STREAM_IN_PROGRESS)) {
+ /* If stream is not in progress, warn and exit */
+ if (stream->state != AMPDU_STREAM_IN_PROGRESS) {
+ wiphy_err(hw->wiphy,
+ "ampdu operation is not in progress");
rc = -EPERM;
break;
}
- spin_unlock_bh(&priv->stream_lock);
- rc = mwl_fwcmd_create_ba(hw, stream, buf_size, vif);
- spin_lock_bh(&priv->stream_lock);
- if (!rc) {
- stream->state = AMPDU_STREAM_ACTIVE;
- } else {
- idx = stream->idx;
+ /* If stream exists, create ba and set active.
+ If ba create failed, remove the stream and warn.
+ No need to stop_ba since the ba create failed. */
+ if (stream) {
spin_unlock_bh(&priv->stream_lock);
- mwl_fwcmd_destroy_ba(hw, idx);
+ rc = mwl_fwcmd_create_ba(hw, stream, buf_size, vif);
spin_lock_bh(&priv->stream_lock);
- mwl_fwcmd_remove_stream(hw, stream);
- wiphy_err(hw->wiphy,
- "ampdu operation error code: %d\n", rc);
+
+ if (!rc) {
+ stream->state = AMPDU_STREAM_ACTIVE;
+ } else {
+ idx = stream->idx;
+ spin_unlock_bh(&priv->stream_lock);
+ mwl_fwcmd_destroy_ba(hw, idx);
+ spin_lock_bh(&priv->stream_lock);
+ mwl_fwcmd_remove_stream(hw, stream);
+ wiphy_err(hw->wiphy,
+ "ampdu operation error code: %d\n", rc);
+ }
}
break;
default:
Thanks. I will check it.
I just tested 10.3.0.14 and the error is still present. The client is an iPhone 6s and error message is the same (so I guess additional FW debug has not been added). Device works fine after the error though.
Thanks for your information. Due to this problem is not so severe, I will add correct reason in FW later.
@yuhhaurlin:
[edit] added a bit more clarification to no. 1
I saw the same as @johnnysl . With an iPhone 6s, when I get the error, I have to switch between the 5 and 2.4 Ghz (and back again) to make the device work again. Other times, the device works just fine after this error.
on the plus side though, 10.3.0.14 gives me the most stable and fastest WiFi connection (in response times) I've ever seen to date. So many thanks for that. There are just some small wrinkles left that need ironing out.
a 3rd thing (small thing) i'm noticing (which i never saw with my previous router) is that if my Window 7 laptop comes out of sleep mode, once in a while it refuses to connect to the 5ghz lan, it tries and then fails back to 2.4. even switching back from 2.4 to 5ghz doesn't work, i have to disable my nic (on the laptop), and re-enable to get it working.
This is with 10.3.0.12; I have not yet upped to 10.3.0.14 yet which I hope will be part of the nov07 openwrt trunk build on downloads.openwrt.org.
I was in ssh with cat /proc/kmsg but didn't get a full stack trace before the router rebooted. root@OpenWrt:~# dmesg [ 5461.467333] ieee80211 phy1: check ba result error 1 [ 5461.472233] ieee80211 phy1: ampdu start error code: -22 [ 5461.517332] ieee80211 phy1: check ba result error 1 [ 5461.522231] ieee80211 phy1: ampdu start error code: -22 [ 5461.567332] ieee80211 phy1: check ba result error 1 [ 5461.572231] ieee80211 phy1: ampdu start error code: -22 [ 5461.617331] ieee80211 phy1: check ba result error 1 [ 5461.622229] ieee80211 phy1: ampdu start error code: -22 [ 5461.667330] ieee80211 phy1: check ba result error 1 [ 5461.672228] ieee80211 phy1: ampdu start error code: -22 [ 5461.717329] ieee80211 phy1: check ba result error 1 [ 5461.722228] ieee80211 phy1: ampdu start error code: -22 [ 5461.767328] ieee80211 phy1: check ba result error 1 [ 5461.772226] ieee80211 phy1: ampdu start error code: -22 [ 5461.817352] ieee80211 phy1: check ba result error 1 [ 5461.822261] ieee80211 phy1: ampdu start error code: -22 [ 5566.586880] ieee80211 phy1: check ba result error 1 [ 5566.591801] ieee80211 phy1: ampdu start error code: -22 [ 5566.636873] ieee80211 phy1: check ba result error 1 [ 5566.641788] ieee80211 phy1: ampdu start error code: -22 [ 5566.686874] ieee80211 phy1: check ba result error 1 [ 5566.691789] ieee80211 phy1: ampdu start error code: -22 [ 5566.736871] ieee80211 phy1: check ba result error 1 [ 5566.741787] ieee80211 phy1: ampdu start error code: -22 [ 5566.786888] ieee80211 phy1: check ba result error 1 [ 5566.791803] ieee80211 phy1: ampdu start error code: -22 [ 5566.836870] ieee80211 phy1: check ba result error 1 [ 5566.841784] ieee80211 phy1: ampdu start error code: -22 [ 5566.886873] ieee80211 phy1: check ba result error 1 [ 5566.891787] ieee80211 phy1: ampdu start error code: -22 [ 5566.936869] ieee80211 phy1: check ba result error 1 [ 5566.941782] ieee80211 phy1: ampdu start error code: -22 [ 5567.246885] ieee80211 phy1: check ba result error 1 [ 5567.251800] ieee80211 phy1: ampdu start error code: -22 [ 5567.296872] ieee80211 phy1: check ba result error 1 [ 5567.301787] ieee80211 phy1: ampdu start error code: -22 [ 5567.336867] ieee80211 phy1: check ba result error 1 [ 5567.341781] ieee80211 phy1: ampdu start error code: -22 [ 5567.386885] ieee80211 phy1: check ba result error 1 [ 5567.391931] ieee80211 phy1: ampdu start error code: -22 [ 5567.436867] ieee80211 phy1: check ba result error 1 [ 5567.441782] ieee80211 phy1: ampdu start error code: -22 [ 6076.463496] ieee80211 phy1: check ba result error 1 [ 6076.468418] ieee80211 phy1: ampdu start error code: -22 [ 6076.503494] ieee80211 phy1: check ba result error 1 [ 6076.508410] ieee80211 phy1: ampdu start error code: -22 [ 6076.543501] ieee80211 phy1: check ba result error 1 [ 6076.548415] ieee80211 phy1: ampdu start error code: -22 [ 6076.583486] ieee80211 phy1: check ba result error 1 [ 6076.588401] ieee80211 phy1: ampdu start error code: -22 [ 6076.623485] ieee80211 phy1: check ba result error 1 [ 6076.628398] ieee80211 phy1: ampdu start error code: -22 [ 6076.673484] ieee80211 phy1: check ba result error 1 [ 6076.678397] ieee80211 phy1: ampdu start error code: -22 [ 6076.723484] ieee80211 phy1: check ba result error 1 [ 6076.728398] ieee80211 phy1: ampdu start error code: -22 [ 6076.773483] ieee80211 phy1: check ba result error 1 [ 6076.778396] ieee80211 phy1: ampdu start error code: -22 [ 6076.833482] ieee80211 phy1: check ba result error 1 [ 6076.838396] ieee80211 phy1: ampdu start error code: -22 [ 6076.883481] ieee80211 phy1: check ba result error 1 [ 6076.888395] ieee80211 phy1: ampdu start error code: -22 [ 6076.933493] ieee80211 phy1: check ba result error 1 [ 6076.938407] ieee80211 phy1: ampdu start error code: -22 [ 6076.983479] ieee80211 phy1: check ba result error 1 [ 6076.988392] ieee80211 phy1: ampdu start error code: -22 [ 6077.033477] ieee80211 phy1: check ba result error 1 [ 6077.038390] ieee80211 phy1: ampdu start error code: -22 [ 6077.083476] ieee80211 phy1: check ba result error 1 [ 6077.088390] ieee80211 phy1: ampdu start error code: -22 [ 6077.133475] ieee80211 phy1: check ba result error 1 [ 6077.138388] ieee80211 phy1: ampdu start error code: -22 [ 6077.433471] ieee80211 phy1: check ba result error 1 [ 6077.438385] ieee80211 phy1: ampdu start error code: -22 [ 6077.483469] ieee80211 phy1: check ba result error 1 [ 6077.488382] ieee80211 phy1: ampdu start error code: -22 [ 6077.533469] ieee80211 phy1: check ba result error 1 [ 6077.538383] ieee80211 phy1: ampdu start error code: -22 [ 6077.583468] ieee80211 phy1: check ba result error 1 [ 6077.588381] ieee80211 phy1: ampdu start error code: -22 [ 6077.633466] ieee80211 phy1: check ba result error 1 [ 6077.638379] ieee80211 phy1: ampdu start error code: -22 [ 6077.683465] ieee80211 phy1: check ba result error 1 [ 6077.688379] ieee80211 phy1: ampdu start error code: -22 [ 6077.733464] ieee80211 phy1: check ba result error 1 [ 6077.738379] ieee80211 phy1: ampdu start error code: -22 [ 6077.783464] ieee80211 phy1: check ba result error 1 [ 6077.788379] ieee80211 phy1: ampdu start error code: -22 [ 6077.833463] ieee80211 phy1: check ba result error 1 [ 6077.838375] ieee80211 phy1: ampdu start error code: -22 [ 6077.883462] ieee80211 phy1: check ba result error 1 [ 6077.888376] ieee80211 phy1: ampdu start error code: -22 [ 6315.029276] ieee80211 phy1: check ba result error 1 [ 6315.034233] ieee80211 phy1: ampdu start error code: -22 [ 6315.079261] ieee80211 phy1: check ba result error 1 [ 6315.084200] ieee80211 phy1: ampdu start error code: -22 [ 6315.129256] ieee80211 phy1: check ba result error 1 [ 6315.134186] ieee80211 phy1: ampdu start error code: -22 [ 6315.179255] ieee80211 phy1: check ba result error 1 [ 6315.184193] ieee80211 phy1: ampdu start error code: -22 [ 6315.229283] ieee80211 phy1: check ba result error 1 [ 6315.234211] ieee80211 phy1: ampdu start error code: -22 [ 6315.289240] ieee80211 phy1: check ba result error 1 [ 6315.294166] ieee80211 phy1: ampdu start error code: -22 [ 6315.349237] ieee80211 phy1: check ba result error 1 [ 6315.354191] ieee80211 phy1: ampdu start error code: -22 [ 6315.389264] ieee80211 phy1: check ba result error 1 [ 6315.394192] ieee80211 phy1: ampdu start error code: -22 [ 6315.429258] ieee80211 phy1: check ba result error 1 [ 6315.434188] ieee80211 phy1: ampdu start error code: -22 [ 6315.479262] ieee80211 phy1: check ba result error 1 [ 6315.484193] ieee80211 phy1: ampdu start error code: -22 [ 6315.539234] ieee80211 phy1: check ba result error 1 [ 6315.544161] ieee80211 phy1: ampdu start error code: -22 [ 6315.589233] ieee80211 phy1: check ba result error 1 [ 6315.594170] ieee80211 phy1: ampdu start error code: -22 [ 6315.639232] ieee80211 phy1: check ba result error 1 [ 6315.644141] ieee80211 phy1: ampdu start error code: -22 [ 6315.689240] ieee80211 phy1: check ba result error 1 [ 6315.694178] ieee80211 phy1: ampdu start error code: -22 [ 6315.749229] ieee80211 phy1: check ba result error 1 [ 6315.754156] ieee80211 phy1: ampdu start error code: -22 [ 6316.049226] ieee80211 phy1: check ba result error 1 [ 6316.054154] ieee80211 phy1: ampdu start error code: -22 [ 6316.089239] ieee80211 phy1: check ba result error 1 [ 6316.094176] ieee80211 phy1: ampdu start error code: -22 [ 6316.139223] ieee80211 phy1: check ba result error 1 [ 6316.144148] ieee80211 phy1: ampdu start error code: -22 [ 6316.189234] ieee80211 phy1: check ba result error 1 [ 6316.194175] ieee80211 phy1: ampdu start error code: -22 [ 6316.249225] ieee80211 phy1: check ba result error 1 [ 6316.254151] ieee80211 phy1: ampdu start error code: -22 [ 6316.299234] ieee80211 phy1: check ba result error 1 [ 6316.304165] ieee80211 phy1: ampdu start error code: -22 [ 6316.349219] ieee80211 phy1: check ba result error 1 [ 6316.354148] ieee80211 phy1: ampdu start error code: -22 [ 6316.409228] ieee80211 phy1: check ba result error 1 [ 6316.414170] ieee80211 phy1: ampdu start error code: -22 [ 6316.469219] ieee80211 phy1: check ba result error 1 [ 6316.474148] ieee80211 phy1: ampdu start error code: -22 [ 6316.519229] ieee80211 phy1: check ba result error 1 [ 6316.524162] ieee80211 phy1: ampdu start error code: -22 [ 6316.569214] ieee80211 phy1: check ba result error 1 [ 6316.574142] ieee80211 phy1: ampdu start error code: -22 [ 6997.909530] ieee80211 phy1: check ba result error 1 [ 6997.914435] ieee80211 phy1: ampdu start error code: -22 [ 6997.949524] ieee80211 phy1: check ba result error 1 [ 6997.954424] ieee80211 phy1: ampdu start error code: -22 [ 6998.799498] ieee80211 phy1: check ba result error 1 [ 6998.804399] ieee80211 phy1: ampdu start error code: -22 [ 6998.839503] ieee80211 phy1: check ba result error 1 [ 6998.844402] ieee80211 phy1: ampdu start error code: -22 [ 6998.879488] ieee80211 phy1: check ba result error 1 [ 6998.884387] ieee80211 phy1: ampdu start error code: -22 [ 6998.929489] ieee80211 phy1: check ba result error 1 [ 6998.934387] ieee80211 phy1: ampdu start error code: -22 [ 6998.969488] ieee80211 phy1: check ba result error 1 [ 6998.974386] ieee80211 phy1: ampdu start error code: -22 [10976.210526] nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead. root@OpenWrt:~# cat /proc/kmsg
<4>[25630.632582] Modules linked in: qcserial pppoe ppp_async iptable_nat cdc_mbim usb_wwan sierra rndis_host qmi_wwan pptp pppox ppp_mppe ppp_generic nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE cdc_ncm cdc_ether armada_thermal xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_NETMAP xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY usbserial usbnet ts_kmp ts_fsm ts_bm thermal_sys slhc rtc_armada38x nf_reject_ipv4 nf_nat_masquerade_ipv4 nf_nat_ftp nf_nat nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_ftp mvsdio iptable_raw iptable_mangle iptable_filter ipt_ECN ip_tables crc_ccitt cdc_wdm act_connmark nf_conntrack act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress leds_pca963x tmp421 pwm_fan hwmon i2c_mv64xxx i2c_dev mwlwifi mac80211 cfg80211 compat ledtrig_usbdev ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ahci ip_gre gre ifb sit tunnel4 ip_tunnel tun vfat fat ext4 jbd2 mbcache nls_cp437 nls_cp1250 regmap_spi regmap_mmio mii sha1_generic mv_cesa ecb des_generic authenc aead crypto_hash mmc_block usb_storage mmc_core leds_tlc59116 regmap_i2c i2c_core xhci_plat_hcd xhci_pci xhci_hcd ahci_mvebu sata_mv ehci_orion ehci_platform ehci_hcd sd_mod ahci_platform libahci_platform libahci libata scsi_mod gpio_button_hotplug usbcore nls_base usb_common <4>[25630.775973] CPU: 0 PID: 326 Comm: kworker/u4:2 Not tainted 3.18.21 #1 <4>[25630.782473] Workqueue: phy1 ieee80211_iface_work [mac80211] <4>[25630.788078] task: df659000 ti: df7b2000 task.ti: df7b2000 <4>[25630.793508] PC is at mwl_tx_del_ampdu_pkts+0x48/0x130 [mwlwifi] <4>[25630.799456] LR is at mwl_tx_del_ampdu_pkts+0x38/0x130 [mwlwifi] <4>[25630.805401] pc : [@yuhhaurlin: I see the errors only appear after the device has been in-active for a while, and then becomes active again. (e.g. if you grab your ipad after a day). Device is then connected but unusable, need to disconnect fully and reconnect (or switch from 5 to 2.4) to get WiFi working again.
I still get these with .14 with an intel wifi card.
[657432.691173] ieee80211 phy0: check ba result error 1
[657432.696341] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.691173] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.696341] ieee80211 phy0: ampdu start error code: -22
[657432.740801] ieee80211 phy0: check ba result error 1
[657432.745815] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.740801] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.745815] ieee80211 phy0: ampdu start error code: -22
[657432.790802] ieee80211 phy0: check ba result error 1
[657432.795812] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.790802] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.795812] ieee80211 phy0: ampdu start error code: -22
[657432.850803] ieee80211 phy0: check ba result error 1
[657432.855812] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.850803] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.855812] ieee80211 phy0: ampdu start error code: -22
[657432.926177] ieee80211 phy0: check ba result error 1
[657432.931229] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.926177] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.931229] ieee80211 phy0: ampdu start error code: -22
[657432.975933] ieee80211 phy0: check ba result error 1
[657432.980982] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.975933] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657432.980982] ieee80211 phy0: ampdu start error code: -22
[657433.025912] ieee80211 phy0: check ba result error 1
[657433.030964] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:25 2015 kern.err kernel: [657433.025912] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:25 2015 kern.err kernel: [657433.030964] ieee80211 phy0: ampdu start error code: -22
[657433.075983] ieee80211 phy0: check ba result error 1
[657433.081041] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:26 2015 kern.err kernel: [657433.075983] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:26 2015 kern.err kernel: [657433.081041] ieee80211 phy0: ampdu start error code: -22
[657433.126061] ieee80211 phy0: check ba result error 1
[657433.131120] ieee80211 phy0: ampdu start error code: -22
Sat Nov 14 00:10:26 2015 kern.err kernel: [657433.126061] ieee80211 phy0: check ba result error 1
Sat Nov 14 00:10:26 2015 kern.err kernel: [657433.131120] ieee80211 phy0: ampdu start error code: -22
I got this error while using my laptop yesterday. The error log contained only the "normal" error and I had to reconnect the laptop (switch to 2.4 then back to 5) for the wifi to work again. L2 was up as the wifi driver on the laptop still believed it had connectivity and I could see the 5Ghz network when scanning. This laptop has an Intel-card.
I've got a new error for a change:
400969.337083] ieee80211 phy1: cmd 0x9125=BAStream timed out [400969.342593] ieee80211 phy1: return code: 0x1125 [400969.347236] ieee80211 phy1: timeout: 0x1125 [400969.352447] ieee80211 phy1: check ba failed execution [400969.357631] ieee80211 phy1: ampdu start error code: -5
Still seeing these in the latest 10.3.0.14 builds...
[68146.882917] ieee80211 phy1: check ba result error 1 [68146.888361] ieee80211 phy1: ampdu start error code: -22 [68146.923076] ieee80211 phy1: check ba result error 1 [68146.928167] ieee80211 phy1: ampdu start error code: -22 [68146.973516] ieee80211 phy1: check ba result error 1 [68146.978709] ieee80211 phy1: ampdu start error code: -22 [68261.112329] ieee80211 phy1: check ba result error 1 [68261.117357] ieee80211 phy1: ampdu start error code: -22
@notnyt: Intel n wireless card? I'm away from home for a couple of days, carrying my laptop with intel n with me. Since then i do not see the errors in my linksys anymore, so it seems to related to my intel n adapter. Fruity devices are not causing it.
Of note, I also have 1 intel wireless laptop in this house, and it seems to me that only this card is causing the issues over time. The rest: broadcom/murata/atheros work fine for a long time.
On Thu, Nov 26, 2015 at 5:59 AM, johnnysl notifications@github.com wrote:
@notnyt https://github.com/notnyt: Intel n wireless card? I'm away from home for a couple of days, carrying my laptop with intel n with me. Since then i do not see the errors in my linksys anymore, so it seems to related to my intel n adapter. Fruity devices are not causing it.
— Reply to this email directly or view it on GitHub https://github.com/kaloz/mwlwifi/issues/41#issuecomment-159906729.
Returned home today and even with the latest wireless build, i see the errors again. So it's 95% certain its the intel advanced n-300 wireless card that is creating the issues.
I saw these errors on my test V1 happen in the middle of the night / off-hours ... do you guys have Smart Connect by any chance? (http://www.intel.com/support/services/smartconnect/sb/CS-033108.htm)
I don't. It's a HP folio 9470m, doesn't seem to have those features
Yes, using an intel. I believe a 7260. Found out that with the latest build it barely works at all on 5ghz, and lots of ba errors.
also this issue wasn't present on the initial revision of .14, only on the latest.
The latest driver is almost the same as initial 10.3.0.14.
@yuhhaurlin They both had the BA errors, but this particular client stopped working on 5ghz, where it worked fine earlier.
Issue is still present, even in the latest version with the kernel panic fix:
[59075.207395] ieee80211 phy1: check ba result error 1 [59075.212294] ieee80211 phy1: ampdu start error code: -22
But it looks like it is just a warning message. The system should still work well, right?
Hello,
My personal experience is that if i leave the AP running for > 1 week, i get packet loss over for example Skype calls made. Skype itself reports the packet loss, and my roommate also reports unplayable video games via wifi from her xboxone and her intel-wifi laptop. It is related to AMPDU. Something still isnt right.
Mike
On Mon, Nov 30, 2015 at 6:31 PM, yuhhaurlin notifications@github.com wrote:
But it looks like it is just a warning message. The system should still work well, right?
— Reply to this email directly or view it on GitHub https://github.com/kaloz/mwlwifi/issues/41#issuecomment-160818058.
@mystica555 Can you test latest driver? Thanks.
@yuhhaurlin: before the kernel panic fix it wasn't, it sometimes needed me to take the client off the wireless and reconnect. Yesterday i did had some weird issue with my intel laptop, causing all network traffic to freeze, reconnect didn't fix that, but a reboot of the laptop did. So not sure if the two issues were related, Will report back, if I encounter the issue again.
@johnnysl
Laptop worked, but wifi "locked" each time a few seconds after starting a new tcp session. E.g. Ssh session to the router would "hang" after typing a few characters of my login name. Websites in the browser would hang halfway loading a page, etc. very weird. Intel laptop was the only device with the issue, mac and other devices were fine, so i currently have dismissed it as a laptop issue.
I had the same issue until I set 5ghz to VHT40. You should try
It is very hard for me to check what you described.
@notnyt You still encounter the same problem with latest fix?
Opened a new issue on @yuhhaurlin request.
Things have improved significanlty since 10.3.0.10, but the ba/ampdu error still occurs:
[ 562.110063] ieee80211 phy0: check ba result error 1 [ 562.114983] ieee80211 phy0: ampdu start error code: -22 [ 562.170025] ieee80211 phy0: check ba result error 1 [ 562.174939] ieee80211 phy0: ampdu start error code: -22 [ 562.220015] ieee80211 phy0: check ba result error 1 [ 562.224924] ieee80211 phy0: ampdu start error code: -22 [ 562.270014] ieee80211 phy0: check ba result error 1 [ 562.274923] ieee80211 phy0: ampdu start error code: -22 [ 562.320028] ieee80211 phy0: check ba result error 1 [ 562.324939] ieee80211 phy0: ampdu start error code: -22 [ 562.380019] ieee80211 phy0: check ba result error 1 [ 562.384922] ieee80211 phy0: ampdu start error code: -22 [ 562.430018] ieee80211 phy0: check ba result error 1 [ 562.434919] ieee80211 phy0: ampdu start error code: -22
Things work fine for a while, then some random event X happens and the errors start happening (while transferring data). The devices connected to 5GHz is an iPhone 6 Plus and a Lenovo X1 Carbon 2. gen. After some time it seems the 5Ghz just gives up and takes a long nap. By connecting to the 2.4 GHz and restarting wifi, 5GHz works again but at reduced speed.
Another, potentially related error, is that the iPhone has trouble connecting to the 5GHz network. It keeps requesting me for the key, and seemingly only accepts the key when another devices (the laptop) has been connected. Otherwise it just gives me an error.
Debug fs output (in case it helps debugging):
@bmork also reports still seeing this issue with a Galaxy S3. He instrumented the driver with debug output and posted the following output in the other issue: