2013-07-29 16:41:24

by Andy Isaacson

[permalink] [raw]
Subject: 3.10, iwlwifi 6200AGN: AP changed bandwidth in a way we can't support - disconnect

After upgrading to 3.10.4 and traveling to Europe I'm often suffering
from failures to associate with the following in dmesg:

[ 37.351621] wlan0: authenticate with 64:70:02:e6:a6:ba
[ 37.364701] wlan0: send auth to 64:70:02:e6:a6:ba (try 1/3)
[ 37.366358] wlan0: authenticated
[ 37.368543] wlan0: associate with 64:70:02:e6:a6:ba (try 1/3)
[ 37.372765] wlan0: RX AssocResp from 64:70:02:e6:a6:ba (capab=0x431 status=0 aid=8)
[ 37.380190] wlan0: associated
[ 37.438935] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth, new config is 2447 MHz, width 1 (2447/0 MHz)
[ 37.438941] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth in a way we can't support - disconnect

I hacked the driver to do

- "AP %pM changed bandwidth, new config is %d MHz, width %d (%d/%d MHz)\n",
+ "AP %pM changed bandwidth, new config is %d MHz, width %d (%d/%d MHz) flags %x/%x\n",
ifmgd->bssid, chandef.chan->center_freq, chandef.width,
- chandef.center_freq1, chandef.center_freq2);
+ chandef.center_freq1, chandef.center_freq2, flags, ifmgd->flags);

and

- if (flags != (ifmgd->flags & (IEEE80211_STA_DISABLE_HT |
+ if ((flags != 0x810 && ifmgd->flags != 0x804) && (
+ flags != (ifmgd->flags & (IEEE80211_STA_DISABLE_HT |

and the result is a working link with

[ 1277.069287] wlan0: authenticate with 64:70:02:e6:a6:ba
[ 1277.118344] wlan0: send auth to 64:70:02:e6:a6:ba (try 1/3)
[ 1277.222126] wlan0: send auth to 64:70:02:e6:a6:ba (try 2/3)
[ 1277.226656] wlan0: authenticated
[ 1277.226806] wlan0: waiting for beacon from 64:70:02:e6:a6:ba
[ 1277.258119] wlan0: associate with 64:70:02:e6:a6:ba (try 1/3)
[ 1277.262717] wlan0: RX AssocResp from 64:70:02:e6:a6:ba (capab=0x431 status=0 aid=9)
[ 1277.269678] wlan0: associated
[ 1277.269727] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 1277.366049] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth, new config is 2447 MHz, width 1 (2447/0 MHz) flags 810/804
[ 2219.627077] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth, new config is 2447 MHz, width 2 (2437/0 MHz) flags 800/804
[ 2220.668210] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth, new config is 2447 MHz, width 1 (2447/0 MHz) flags 810/804

My userland is Debian unstable with

ii wpasupplicant 1.0-3+b2 amd64 client support for WPA and WPA2 (IEEE 802.11i)
ii firmware-iwlwifi 0.36+wheezy.1 all Binary firmware for Intel PRO/Wireless 3945 and 802.11

using ifup with the WPA configuration in /etc/network/interfaces.
Hardware is a Thinkpad x201s. Bootup iwlwifi messages are

[ 7.985050] iwlwifi 0000:02:00.0: irq 42 for MSI/MSI-X
[ 8.061896] iwlwifi 0000:02:00.0: loaded firmware version 9.221.4.1 build 25532 op_mode iwldvm
[ 8.087255] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_DEBUG enabled
[ 8.087257] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_DEBUGFS enabled
[ 8.087258] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_DEVICE_TRACING enabled
[ 8.087260] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_DEVICE_TESTMODE disabled
[ 8.087261] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_P2P enabled
[ 8.087264] iwlwifi 0000:02:00.0: Detected Intel(R) Centrino(R) Advanced-N 6200 AGN, REV=0x74
[ 8.087379] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
[ 26.676655] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
[ 26.683499] iwlwifi 0000:02:00.0: Radio type=0x1-0x3-0x1
[ 27.023090] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
[ 27.029927] iwlwifi 0000:02:00.0: Radio type=0x1-0x3-0x1

-andy


2013-07-31 14:59:24

by Johannes Berg

[permalink] [raw]
Subject: Re: 3.10, iwlwifi 6200AGN: AP changed bandwidth in a way we can't support - disconnect

On Wed, 2013-07-31 at 07:57 -0700, Andy Isaacson wrote:
> On Wed, Jul 31, 2013 at 10:59:56AM +0200, Stanislaw Gruszka wrote:
> > We have few reports about this. Johannes, proposed this patch
> > http://p.sipsolutions.net/9d1dd0734d2c3a7a.txt
> >
> > Could you check if it fixes the problem for you?
>
> I unfortunately didn't get a chance to confirm before leaving Berlin,
> but the patch Johannes posted in the other thread seems to agree with my
> analysis of the problem, and Johannes confirmed from my pcap that it
> is the same problem.

I think we have two problems - the one you have should be fixed by the
patch I posted (not the one above) but the problem Chris is running into
has a WARN_ON() and isn't fixed.

johannes


2013-07-31 08:56:51

by Stanislaw Gruszka

[permalink] [raw]
Subject: Re: 3.10, iwlwifi 6200AGN: AP changed bandwidth in a way we can't support - disconnect

On Mon, Jul 29, 2013 at 09:34:52AM -0700, Andy Isaacson wrote:
> After upgrading to 3.10.4 and traveling to Europe I'm often suffering
> from failures to associate with the following in dmesg:
>
> [ 37.351621] wlan0: authenticate with 64:70:02:e6:a6:ba
> [ 37.364701] wlan0: send auth to 64:70:02:e6:a6:ba (try 1/3)
> [ 37.366358] wlan0: authenticated
> [ 37.368543] wlan0: associate with 64:70:02:e6:a6:ba (try 1/3)
> [ 37.372765] wlan0: RX AssocResp from 64:70:02:e6:a6:ba (capab=0x431 status=0 aid=8)
> [ 37.380190] wlan0: associated
> [ 37.438935] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth, new config is 2447 MHz, width 1 (2447/0 MHz)
> [ 37.438941] wlan0: AP 64:70:02:e6:a6:ba changed bandwidth in a way we can't support - disconnect
>
> I hacked the driver to do
>
> - "AP %pM changed bandwidth, new config is %d MHz, width %d (%d/%d MHz)\n",
> + "AP %pM changed bandwidth, new config is %d MHz, width %d (%d/%d MHz) flags %x/%x\n",
> ifmgd->bssid, chandef.chan->center_freq, chandef.width,
> - chandef.center_freq1, chandef.center_freq2);
> + chandef.center_freq1, chandef.center_freq2, flags, ifmgd->flags);
>
> and
>
> - if (flags != (ifmgd->flags & (IEEE80211_STA_DISABLE_HT |
> + if ((flags != 0x810 && ifmgd->flags != 0x804) && (
> + flags != (ifmgd->flags & (IEEE80211_STA_DISABLE_HT |
>
> and the result is a working link with

We have few reports about this. Johannes, proposed this patch
http://p.sipsolutions.net/9d1dd0734d2c3a7a.txt

Could you check if it fixes the problem for you?

Stanislaw

2013-07-31 14:57:38

by Andy Isaacson

[permalink] [raw]
Subject: Re: 3.10, iwlwifi 6200AGN: AP changed bandwidth in a way we can't support - disconnect

On Wed, Jul 31, 2013 at 10:59:56AM +0200, Stanislaw Gruszka wrote:
> We have few reports about this. Johannes, proposed this patch
> http://p.sipsolutions.net/9d1dd0734d2c3a7a.txt
>
> Could you check if it fixes the problem for you?

I unfortunately didn't get a chance to confirm before leaving Berlin,
but the patch Johannes posted in the other thread seems to agree with my
analysis of the problem, and Johannes confirmed from my pcap that it
is the same problem.

-andy