Passive Scanning Bugreport
Thomas King <[email protected]>
| Newsgroups | gmane.linux.drivers.ipw2100.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi all, unfortunately, I figured out that my passive scanning implementation does not work in all circumstances. However, I believe this is not a bug in my implementation, instead it is a bug in the firmware or somewhere else inside the driver (at least I hope so ;-)). To clarify this, I need your help! I attachted two files containing the scenarios in which passive scanning does work respectively does not work. I set the debug level to 0xfff. Scenario 1 (passive scanning does not work): Please refer to bugreport1.txt. From line 2 you see that a passive scan is initiated at 00:02:07 (am in the morning *grr*). Line 132 shows you that the scan completion watchdog jumps in and resets the card. (Please keep in mind that in this scenario the driver did not miss any beacon as you can see from the log file.) Scenario 2 (passive scanning does work): Please check out the bugreport2.txt file. As you see from line 38 the driver missed a beacon and hence aborts the (still running) passive scan. Line 41 shows that the scan is (normally) completed. The difference between Scenario 1 and 2 is that the driver missed a beacon in Scenario 2 and hence stopped the scan process. In Scenario 1 no scan completed event shows up. Unfortunately, in my environment at the University I usually see Scenario 2 and hence my patch worked most of the time. Even if the card gets resetted the driver reports a correct answer and this is why it took me some time to figure out that there is something wrong. As far as I understand how the driver works, I believe the firmware is not generating a scan completed event. Another solution might be that I am not supposed to setup a scan watchdog for the passive scanning case. To clarify this problem I need your help! Please let me know what you think about this problem. Greetings, Thomas ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ ipw2100-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ipw2100-devel
bugreport1.txt
(text/plain, 11.1 KB)
Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_set_scan Start scan Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_request_scan_helper use passive scanning Jul 29 00:02:07 encelados kernel: 00000000 AA 00 00 00 4D 02 03 04 05 06 07 08 09 0A 0B 0C ....M... ........ Jul 29 00:02:07 encelados kernel: 00000010 0D 0E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 29 00:02:07 encelados kernel: 00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 29 00:02:07 encelados kernel: 00000030 00 00 00 00 00 00 00 00 00 00 01 11 11 11 11 11 ........ ........ Jul 29 00:02:07 encelados kernel: 00000040 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 29 00:02:07 encelados kernel: 00000050 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 00 ........ ........ Jul 29 00:02:07 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:07 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:07 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 29 00:02:07 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 29 00:02:07 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 29 00:02:08 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 29 00:02:09 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 29 00:02:10 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 29 00:02:11 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 29 00:02:12 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:12 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:12 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 29 00:02:12 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:12 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:12 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 29 00:02:12 encelados kernel: ipw2200: U ipw_scan_check Scan completion watchdog resetting adapter after (5000ms ). Jul 29 00:02:12 encelados kernel: ipw2200: U ipw_deinit Aborting scan during shutdown. Jul 29 00:02:12 encelados kernel: ipw2200: U ipw_deinit Disassociating during shutdown.
bugreport2.txt
(text/plain, 3.6 KB)
Jul 28 23:56:25 encelados kernel: ipw2200: U ipw_wx_set_scan Start scan Jul 28 23:56:25 encelados kernel: ipw2200: U ipw_request_scan_helper use passive scanning Jul 28 23:56:25 encelados kernel: 00000000 A5 00 00 00 4D 02 03 04 05 06 07 08 09 0A 0B 0C ....M... ........ Jul 28 23:56:25 encelados kernel: 00000010 0D 0E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 28 23:56:25 encelados kernel: 00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 28 23:56:25 encelados kernel: 00000030 00 00 00 00 00 00 00 00 00 00 01 11 11 11 11 11 ........ ........ Jul 28 23:56:25 encelados kernel: 00000040 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........ Jul 28 23:56:25 encelados kernel: 00000050 00 00 00 00 00 00 00 00 C8 00 00 00 00 00 00 00 ........ ........ Jul 28 23:56:25 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_name Name: IEEE 802.11g Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_freq GET Freq/Channel -> 1 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_essid Getting essid: 'Doniluma' Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_mode Get MODE -> 2 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_range GET Range Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_sens GET roaming threshold -> OFF 8 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_wap Getting WAP BSSID: 00:11:88:28:5e:e0 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_nick Getting nick Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_rate GET Rate -> 54000000 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_rts GET RTS Threshold -> 2304 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_frag GET Frag Threshold -> 2346 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_power GET Power Management Mode -> 06 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_txpow GET TX Power -> ON 20 Jul 28 23:56:26 encelados kernel: ipw2200: U ipw_wx_get_retry GET retry -> 7 Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:26 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_rx_notification type = 25 (4 bytes) Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_rx_notification type = 17 (8 bytes) Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_handle_missed_beacon Aborting scan with missed beacon. Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_handle_missed_beacon Missed beacon: 1 Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_rx_notification type = 13 (4 bytes) Jul 28 23:56:27 encelados kernel: ipw2200: I ipw_rx_notification Scan completed: type 1, 1 channels, 2 status