Bug 35932
Summary: | iwl4965 connection problems after moving to iwlegacy | ||
---|---|---|---|
Product: | Networking | Reporter: | Luca Mattiello (aiedail92) |
Component: | Wireless | Assignee: | Stanislaw Gruszka (stf_xl) |
Status: | CLOSED CODE_FIX | ||
Severity: | normal | CC: | florian, linville, maciej.rutecki, markodevelop, rjw |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.38-rc1-git | Subsystem: | |
Regression: | Yes | Bisected commit-id: | |
Bug Depends on: | |||
Bug Blocks: | 32012 | ||
Attachments: |
Kernel logs
iwlegacy_test.patch iwl4965 logs |
Description
Luca Mattiello
2011-05-26 17:01:39 UTC
First-Bad-Commit : be663ab67077fac8e23eb8e231a8c1c94cb32e54 Unfortunately first bad commit info is not much helpful here. Please provide information about your network, i.e: type, encryption, channel, anything that you think could be useful for reproduce the problem. Also please provide verbose debug messages on bad kernel and also for working kernel for compare. To do this you have to configure syslog deamon to log debug messages into some file, let say /var/log/kernel. For rsyslogd this mean adding: kern.* /var/log/kernel line in /etc/rsyslog.conf and restart service "/etc/init.d/rsyslog restart" Then to get debug messages: modprobe -r iwl4965 # or modprobe -r iwlagn on old kernel echo > /var/log/kernel modprobe iwl4965 debug=0x47ffffff # or modprobe iwlagn debug=... #connect reproduce the problem cp /var/log/kernel ~/kernel.bad # or ~/kernel.good and attach kernel.bad and kernel.good here (compressed if big). Note you have to compiled kernel with CONFIG_IWLWIFI_LEGACY_DEBUG on new and CONFIG_IWLWIFI_DEBUG=y on old kernel, to make driver generate debug messages. Network type is 802.11G, encryption WPA2-PSK [AES], channel 07 (2.442GHz), however I experienced the same problem with any other channel I could try (01-13), and with 802.11N too. I have to clarify that if I am nearer to the router (link quality ~50/70) then the network becomes usable even in the bad kernel, the difference is with little lower signal levels (~45-25/70), where the good kernel performs excellently, while the bad refuses to connect. I'll attach the compressed logs. Created attachment 59982 [details]
Kernel logs
Indeed we can not transmit data - don't get response from firmware for tx command. Seems that is caused by bad tx gain calibration, because of wrong temperature value (-15 Celsius degrees :-) Bad kernel: > May 29 17:55:03 localhost kernel: [ 3191.889918] ieee80211 phy2: U > iwl4965_fill_txpower_tbl curr volt 0 eeprom volt -3 volt comp 0 > May 29 17:55:03 localhost kernel: [ 3191.889925] ieee80211 phy2: U > iwl4965_fill_txpower_tbl chain = 0 > May 29 17:55:03 localhost kernel: [ 3191.889933] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry tmp 32, curr tmp -14, comp -15 steps > May 29 17:55:03 localhost kernel: [ 3191.889940] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry idx 32, fctry pwr 27 > May 29 17:55:03 localhost kernel: [ 3191.889947] ieee80211 phy2: U > iwl4965_fill_txpower_tbl chain = 1 > May 29 17:55:03 localhost kernel: [ 3191.889955] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry tmp 32, curr tmp -14, comp -15 steps > May 29 17:55:03 localhost kernel: [ 3191.889962] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry idx 32, fctry pwr 26 > May 29 17:55:03 localhost kernel: [ 3191.889971] ieee80211 phy2: U > iwl4965_fill_txpower_tbl rate 0 sat 34 reg 30 usr 30 tgt 30 Good kernel: > May 29 18:02:35 localhost kernel: [ 162.112045] ieee80211 phy2: U > iwl4965_fill_txpower_tbl curr volt 0 eeprom volt -3 volt comp 0 > May 29 18:02:35 localhost kernel: [ 162.112052] ieee80211 phy2: U > iwl4965_fill_txpower_tbl chain = 0 > May 29 18:02:35 localhost kernel: [ 162.112058] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry tmp 32, curr tmp 60, comp 9 steps > May 29 18:02:35 localhost kernel: [ 162.112066] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry idx 32, fctry pwr 27 > May 29 18:02:35 localhost kernel: [ 162.112072] ieee80211 phy2: U > iwl4965_fill_txpower_tbl chain = 1 > May 29 18:02:35 localhost kernel: [ 162.112078] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry tmp 32, curr tmp 60, comp 9 steps > May 29 18:02:35 localhost kernel: [ 162.112085] ieee80211 phy2: U > iwl4965_fill_txpower_tbl fctry idx 32, fctry pwr 26 > May 29 18:02:35 localhost kernel: [ 162.112093] ieee80211 phy2: U > iwl4965_fill_txpower_tbl rate 0 sat 34 reg 30 usr 30 tgt 30 I'm going to find the reason of bad temperature value, and prepare a patch. Created attachment 60202 [details]
iwlegacy_test.patch
Please test this patch, it include possible fix (+other one that is not yet applied), and some debug messages change.
If it does not fix the problem, please load module with debug=0x4303 option, reproduce and attach logs.
Yes, the patch fixed the problem. Thank you very much. I have the same issue with 2.6.39. I applied the patch but it did not fix the issue: connection is slow (lots of lost packages, some times 90% loss). ping www.google.com ... --- www.google.com ping statistics --- 9 packets transmitted, 8 received, 11% packet loss, time 8008ms rtt min/avg/max/mdev = 48.856/52.062/57.012/2.885 ms iwconfig: wlan0 IEEE 802.11abgn ESSID:"sid123" Mode:Managed Frequency:2.462 GHz Access Point: xxxx Bit Rate=28.9 Mb/s Tx-Power=14 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality=56/70 Signal level=-54 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:555 Invalid misc:405 Missed beacon:0 If I use 2.6.37 everything goes back to normal (good speed). I captured the driver logs for debug=0x4303 option. Created attachment 60312 [details]
iwl4965 logs
Mark, your issue is a different one, please open a new bug report for it, assign it to me, and provide logs as described in Comment #2. A patch referencing this bug report has been merged in v3.0-rc2: commit dfe21582ac5ebc460dda98c67e8589dd506d02cd Author: Stanislaw Gruszka <sgruszka@redhat.com> Date: Wed Jun 1 17:17:57 2011 +0200 iwl4965: correctly validate temperature value |