Bug 54851 - Speed regression - no HT40 with 3.8 (Intel iwlwifi)
Summary: Speed regression - no HT40 with 3.8 (Intel iwlwifi)
Status: CLOSED CODE_FIX
Alias: None
Product: Networking
Classification: Unclassified
Component: Wireless (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: networking_wireless@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-05 11:48 UTC by Jens Weibler
Modified: 2014-05-08 05:43 UTC (History)
5 users (show)

See Also:
Kernel Version: 3.9
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments

Description Jens Weibler 2013-03-05 11:48:47 UTC
I've upgraded from 3.5 [1] to 3.8 [2].
Now I get only max 130 Mbit/s wireless connection (5Ghz) - with the old kernel I got 300 Mbit/s.

My guess:
[   19.191653] wlan1: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

Output of iw scan dump:
BSS 00:26:3e:6f:20:41 (on wlan1) -- associated
	TSF: 14223052854 usec (0d, 03:57:03)
	freq: 5180
	beacon interval: 100
	capability: ESS Privacy SpectrumMgmt ShortSlotTime (0x0511)
	signal: -43.00 dBm
	last seen: 3120 ms ago
	Information elements from Probe Response frame:
	SSID: eduroam
	Supported rates: 6.0* 9.0 12.0* 18.0 24.0* 36.0 48.0 54.0 
	DS Parameter set: channel 36
	Country: DE	Environment: Indoor/Outdoor
		Channels [36 - 64] @ 11 dBm
		Channels [100 - 140] @ 16 dBm
	RSN:	 * Version: 1
		 * Group cipher: TKIP
		 * Pairwise ciphers: TKIP CCMP
		 * Authentication suites: IEEE 802.1X
		 * Capabilities: (0x0000)
	WPA:	 * Version: 1
		 * Group cipher: TKIP
		 * Pairwise ciphers: TKIP CCMP
		 * Authentication suites: IEEE 802.1X
		 * Capabilities: (0x0000)
	WMM:	 * Parameter version 1
		 * BE: CW 15-1023, AIFSN 3
		 * BK: CW 15-1023, AIFSN 7
		 * VI: CW 7-15, AIFSN 2, TXOP 3008 usec
		 * VO: CW 3-7, AIFSN 2, TXOP 1504 usec
	HT capabilities:
		Capabilities: 0x1ce
			HT20/HT40
			SM Power Save disabled
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 3839 bytes
			No DSSS/CCK HT40
		Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
		Minimum RX AMPDU time spacing: 8 usec (0x06)
		HT TX/RX MCS rate indexes supported: 0-15
	HT operation:
		 * primary channel: 36
		 * secondary channel offset: above
		 * STA channel width: any
		 * RIFS: 0
		 * HT protection: nonmember
		 * non-GF present: 1
		 * OBSS non-GF present: 0
		 * dual beacon: 0
		 * dual CTS protection: 0
		 * STBC beacon: 0
		 * L-SIG TXOP Prot: 0
		 * PCO active: 0
		 * PCO phase: 0

Hardware:
[   10.463680] iwlwifi 0000:0c:00.0: loaded firmware version 8.83.5.1 build 33692
[   10.575321] iwlwifi 0000:0c:00.0: CONFIG_IWLWIFI_DEBUG disabled
[   10.575326] iwlwifi 0000:0c:00.0: CONFIG_IWLWIFI_DEBUGFS enabled
[   10.575328] iwlwifi 0000:0c:00.0: CONFIG_IWLWIFI_DEVICE_TRACING enabled
[   10.575330] iwlwifi 0000:0c:00.0: CONFIG_IWLWIFI_DEVICE_TESTMODE enabled
[   10.575332] iwlwifi 0000:0c:00.0: CONFIG_IWLWIFI_P2P disabled
[   10.575335] iwlwifi 0000:0c:00.0: Detected Intel(R) Ultimate N WiFi Link 5300 AGN, REV=0x24



[1] Linux version 3.5.0-25-generic (buildd@komainu) (gcc version 4.7.2 (Ubuntu/Linaro 4.7.2-2ubuntu1) ) #39-Ubuntu SMP Mon Feb 25 18:26:58 UTC 2013 (Ubuntu 3.5.0-25.39-generic 3.5.7.4)
[2] Linux version 3.8.1-030801-generic (root@gomeisa) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #201302280935 SMP Thu Feb 28 14:37:19 UTC 2013
Comment 1 Johannes Berg 2013-03-05 17:21:20 UTC
Can you show "iw list" output please?
Comment 2 Johannes Berg 2013-03-05 17:27:03 UTC
and "iw reg get" maybe
Comment 3 Jens Weibler 2013-03-05 17:46:58 UTC
> and "iw reg get" maybe

country DE:
        (2400 - 2483 @ 40), (N/A, 20)
        (5150 - 5250 @ 40), (N/A, 20), NO-OUTDOOR
        (5250 - 5350 @ 40), (N/A, 20), NO-OUTDOOR, DFS
        (5470 - 5725 @ 40), (N/A, 26), DFS(In reply to comment #2)
Comment 4 Jens Weibler 2013-03-05 17:47:24 UTC
(In reply to comment #1)
> Can you show "iw list" output please?

$ iw list
Wiphy phy0
        Band 1:
                Capabilities: 0x872
                        HT20/HT40
                        Static SM Power Save
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        No RX STBC
                        Max AMSDU length: 7935 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 4 usec (0x05)
                HT TX/RX MCS rate indexes supported: 0-23, 32
                Frequencies:
                        * 2412 MHz [1] (15.0 dBm)
                        * 2417 MHz [2] (15.0 dBm)
                        * 2422 MHz [3] (15.0 dBm)
                        * 2427 MHz [4] (15.0 dBm)
                        * 2432 MHz [5] (15.0 dBm)
                        * 2437 MHz [6] (15.0 dBm)
                        * 2442 MHz [7] (15.0 dBm)
                        * 2447 MHz [8] (15.0 dBm)
                        * 2452 MHz [9] (15.0 dBm)
                        * 2457 MHz [10] (15.0 dBm)
                        * 2462 MHz [11] (15.0 dBm)
                        * 2467 MHz [12] (15.0 dBm) (passive scanning, no IBSS)
                        * 2472 MHz [13] (15.0 dBm) (passive scanning, no IBSS)
                Bitrates (non-HT):
                        * 1.0 Mbps
                        * 2.0 Mbps (short preamble supported)
                        * 5.5 Mbps (short preamble supported)
                        * 11.0 Mbps (short preamble supported)
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
        Band 2:
                Capabilities: 0x872
                        HT20/HT40
                        Static SM Power Save
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        No RX STBC
                        Max AMSDU length: 7935 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 4 usec (0x05)
                HT TX/RX MCS rate indexes supported: 0-23, 32
                Frequencies:
                        * 5180 MHz [36] (15.0 dBm) (passive scanning, no IBSS)
                        * 5200 MHz [40] (15.0 dBm) (passive scanning, no IBSS)
                        * 5220 MHz [44] (15.0 dBm) (passive scanning, no IBSS)
                        * 5240 MHz [48] (15.0 dBm) (passive scanning, no IBSS)
                        * 5260 MHz [52] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5280 MHz [56] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5300 MHz [60] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5320 MHz [64] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5500 MHz [100] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5520 MHz [104] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5540 MHz [108] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5560 MHz [112] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5580 MHz [116] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5600 MHz [120] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5620 MHz [124] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5640 MHz [128] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5660 MHz [132] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5680 MHz [136] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5700 MHz [140] (15.0 dBm) (passive scanning, no IBSS, radar detection)
                        * 5745 MHz [149] (disabled)
                        * 5765 MHz [153] (disabled)
                        * 5785 MHz [157] (disabled)
                        * 5805 MHz [161] (disabled)
                        * 5825 MHz [165] (disabled)
                Bitrates (non-HT):
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
        max # scan SSIDs: 20
        max scan IEs length: 195 bytes
        Coverage class: 0 (up to 0m)
        Supported Ciphers:
                * WEP40 (00-0f-ac:1)
                * WEP104 (00-0f-ac:5)
                * TKIP (00-0f-ac:2)
                * CCMP (00-0f-ac:4)
        Available Antennas: TX 0 RX 0
        Supported interface modes:
                 * IBSS
                 * managed
                 * monitor
        software interface modes (can always be added):
                 * monitor
        interface combinations are not supported
        Supported commands:
                 * new_interface
                 * set_interface
                 * new_key
                 * new_beacon
                 * new_station
                 * new_mpath
                 * set_mesh_params
                 * set_bss
                 * authenticate
                 * associate
                 * deauthenticate
                 * disassociate
                 * join_ibss
                 * join_mesh
                 * remain_on_channel
                 * set_tx_bitrate_mask
                 * action
                 * frame_wait_cancel
                 * set_wiphy_netns
                 * set_channel
                 * set_wds_peer
                 * Unknown command (84)
                 * Unknown command (87)
                 * Unknown command (85)
                 * Unknown command (89)
                 * Unknown command (92)
                 * testmode
                 * connect
                 * disconnect
        Supported TX frame types:
                 * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * Unknown mode (10): 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        Supported RX frame types:
                 * IBSS: 0x40 0xb0 0xc0 0xd0
                 * managed: 0x40 0xd0
                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * mesh point: 0xb0 0xc0 0xd0
                 * P2P-client: 0x40 0xd0
                 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * Unknown mode (10): 0x40 0xd0
        Device supports RSN-IBSS.
        HT Capability overrides:
                 * MCS: ff ff ff ff ff ff ff ff ff ff
                 * maximum A-MSDU length
                 * supported channel width
                 * short GI for 40 MHz
                 * max A-MPDU length exponent
                 * min MPDU start spacing
        Device supports TX status socket option.
        Device supports HT-IBSS.
Comment 5 Johannes Berg 2013-03-05 18:09:19 UTC
Hmm, none of this gives any indication (3.10 will be better ...)

Do you have debugfs? if so, the contents of

/sys/kernel/debug/ieee80211/phy0/ht40allow_map

might be helpful.
Comment 6 Jens Weibler 2013-03-06 14:09:56 UTC
(In reply to comment #5)
> Hmm, none of this gives any indication (3.10 will be better ...)
> 
> Do you have debugfs? if so, the contents of
> 
> /sys/kernel/debug/ieee80211/phy0/ht40allow_map
> 
> might be helpful.

# cat /sys/kernel/debug/ieee80211/phy0/ht40allow_map 
2412 HT40  +
2417 HT40  +
2422 HT40  +
2427 HT40  +
2432 HT40 -+
2437 HT40 -+
2442 HT40 -+
2447 HT40 - 
2452 HT40 - 
2457 HT40 - 
2462 HT40 - 
2467 HT40   
2472 HT40   
5180 HT40  +
5200 HT40 -+
5220 HT40 -+
5240 HT40 -+
5260 HT40 -+
5280 HT40 -+
5300 HT40 -+
5320 HT40 - 
5500 HT40  +
5520 HT40 -+
5540 HT40 -+
5560 HT40 -+
5580 HT40 -+
5600 HT40 -+
5620 HT40 -+
5640 HT40 -+
5660 HT40 -+
5680 HT40 - 
5700 HT40   
5745 Disabled
5765 Disabled
5785 Disabled
5805 Disabled
5825 Disabled
Comment 7 Johannes Berg 2013-03-06 14:15:05 UTC
Hmmm, that shows channel 36 (5180 MHz) HT40+ allowed ... I'll dig around the code.
Comment 8 Johannes Berg 2013-03-06 14:50:01 UTC
Wait ... 3.8 doesn't have commit 586e01ededf9b713a1512dd658806791a7ca1a50, so that message is entirely expected ...

So I don't think this is related. Can you check "iw dev" output?
Comment 9 Johannes Berg 2013-03-06 15:26:26 UTC
Or maybe you can apply this patch and see if the printout persists, but I don't think it will: http://thread.gmane.org/gmane.linux.kernel.stable/45466
Comment 10 Brandon Watkins 2013-04-09 17:19:47 UTC
I've been having this same problem since kernel 3.8, on both of my laptops (one has intel 6205 wireless, one has 6235). My router is configured to use 40mhz over the 5ghz band, but on kernel 3.8.x I get 144mbit no matter what. If I downgrade to 3.7 or previous it works perfectly and I get 300mbit over 5ghz. From what I've seen 40mhz on intel wireless seems totally broken on 3.8.
Comment 11 Brandon Watkins 2013-04-09 17:26:20 UTC
iw list: http://hastebin.com/pecudibaxu.css

iw dev: http://hastebin.com/pihevinada.coffee
Comment 12 Brandon Watkins 2013-04-09 17:28:43 UTC
[brandon@arch-lemu4 ~]$ iw reg get
country 00:
	(2402 - 2472 @ 40), (6, 20)
	(2457 - 2482 @ 40), (6, 20), PASSIVE-SCAN, NO-IBSS
	(2474 - 2494 @ 20), (6, 20), NO-OFDM, PASSIVE-SCAN, NO-IBSS
	(5170 - 5250 @ 40), (6, 20), PASSIVE-SCAN, NO-IBSS
	(5735 - 5835 @ 40), (6, 20), PASSIVE-SCAN, NO-IBSS
	(57240 - 63720 @ 2160), (N/A, 0)
Comment 13 Jonah Bernhard 2013-04-09 19:23:25 UTC
(In reply to comment #10)
> I've been having this same problem since kernel 3.8, on both of my laptops
> (one
> has intel 6205 wireless, one has 6235). My router is configured to use 40mhz
> over the 5ghz band, but on kernel 3.8.x I get 144mbit no matter what. If I
> downgrade to 3.7 or previous it works perfectly and I get 300mbit over 5ghz.
> From what I've seen 40mhz on intel wireless seems totally broken on 3.8.

I have identical behavior with Intel 6235 wireless.
Comment 14 flux242 2013-08-10 10:32:37 UTC
(In reply to Jonah Bernhard from comment #13)
> (In reply to comment #10)
> > I've been having this same problem since kernel 3.8, on both of my laptops
> (one
> > has intel 6205 wireless, one has 6235). My router is configured to use
> 40mhz
> > over the 5ghz band, but on kernel 3.8.x I get 144mbit no matter what. If I
> > downgrade to 3.7 or previous it works perfectly and I get 300mbit over
> 5ghz.
> > From what I've seen 40mhz on intel wireless seems totally broken on 3.8.
> 
> I have identical behavior with Intel 6235 wireless.

me too. I've got Intel Centrino Wireless-N 2230, 3.8.0-27 Kernel image and I can only connect to my AP using 20MHz channel. Rebooting into Windows and HT40 works. I also tried kernel version 3.10.5 and it didn't help. 

lshw -C net - http://pastebin.com/ambhxpxk
iw list     - http://pastebin.com/MrSBGRqJ
iw dev
phy#0
	Interface wlan0
		ifindex 3
		type managed

my AP (iw wlan0 scan) - http://pastebin.com/kH6NJq76
(not sure what 'HT protection: 20 MHz' means )
Comment 15 Brandon Watkins 2013-08-10 14:06:22 UTC
This is fixed for me in kernel 3.9.x and 3.10.x, I can now connect to my 5ghz network at full 300mbps speed.
Comment 16 Brandon Watkins 2013-08-10 14:08:12 UTC
Forgot to mention this is on intel centrino 6235
Comment 17 Jonah Bernhard 2013-08-11 23:33:20 UTC
Also fixed for me on recent kernels.
Comment 18 flux242 2013-09-08 14:29:17 UTC
> me too. I've got Intel Centrino Wireless-N 2230, 3.8.0-27 Kernel image and I
> can only connect to my AP using 20MHz channel. Rebooting into Windows and
> HT40 works. I also tried kernel version 3.10.5 and it didn't help. 

forgot to mention, I'm using 2.4ghz band
Comment 19 Emmanuel Grumbach 2014-03-18 06:19:09 UTC
closing based on comment 17

Note You need to log in before you can comment on or make changes to this bug.