Search Linux Wireless

Re: [WTF, maintainers] Re: *PING* iwlagn 2.6.35: "BA scd_flow 0 does not match txq_id 10" regression

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 10, 2010 at 7:05 PM, Guy, Wey-Yi <wey-yi.w.guy@xxxxxxxxx> wrote:
> Hi Andrew,
>
> On Tue, 2010-08-10 at 14:39 -0700, Andrew Lutomirski wrote:
>> On Mon, Jul 26, 2010 at 4:02 PM, Andrew Lutomirski <luto@xxxxxxx> wrote:
>> > There's a regression in 2.6.35 where the connection breaks and iwlagn
>> > writes a bunch of:
>> >
>> > iwlagn 0000:03:00.0: BA scd_flow 0 does not match txq_id 10
>> >
>> > This is confirmed [1] and a patch supposedly exists.  Since this
>> > breaks at least two people's wireless and 2.6.35 is about to be
>> > released, can we see the patches?
>> >
>> > Thanks,
>> > Andy
>> >
>> > [1] http://article.gmane.org/gmane.linux.kernel.wireless.general/53552
>> >
>>
>> This regression was reported on July 21 and confirmed, supposedly with
>> a patch available, on July 24 (or maybe July 23).  On July 26 I pinged
>> the list because I'm affected as well.
>>
>> It's now August 10 and both 2.6.35 and 2.5.35.1 have been released and
>> the bug is still there.  WTF happened?  (I admit I haven't actually
>> tested 2.6.35.1 because it's still compiling, but I see nothing to
>> suggest that it's been fixed.)
>>
>
> Sorry for the delay, the problem you report is a real problem in our
> uCode; unfortunately, we still not root cause the real problem yet. The
> patch I provide previous just a hack and still waiting for our internal
> validation team to make sure it did not break the overall behaviors.
>
> I will submit the patch as soon as I got the report back from our test
> team; at the meantime, we are very active work on root cause the real
> problem. Once we have the possible solution, it will be great if you can
> help us to verify it.

In case this helps, I just captured the bug starting with
iwlagn.debug=1 and with the following patch:

diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-tx.c
b/drivers/net/wireless/iwlwifi/iwl-agn-tx.c
index 7d614c4..8583c42 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-tx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-tx.c
@@ -1300,8 +1300,9 @@ void iwlagn_rx_reply_compressed_ba(struct iwl_priv *priv,
        tid = ba_resp->tid;
        agg = &priv->stations[sta_id].tid[tid].agg;
        if (unlikely(agg->txq_id != scd_flow)) {
-               IWL_ERR(priv, "BA scd_flow %d does not match txq_id %d\n",
-                       scd_flow, agg->txq_id);
+               IWL_ERR(priv, "BA scd_flow %d does not match txq_id %d
(sta_id = %d, tid = %d)\n",
+                       scd_flow, agg->txq_id, sta_id, tid);
+               //              iwl_force_reset(priv, IWL_FW_RESET);
                return;
        }


I've attached the dmesg.  Search for 'BA'.

--Andy

Attachment: dmesg
Description: Binary data


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux