Trouble with hostscan and host_roaming mode '2'
Tue Jul 12 16:05:15 PDT 2005
We're having problems with the HostAP driver ( v0.3.9 ) and host_roaming
When associated with an AP, if a hostscan is done, we see the bit rate
of the connection drop to 2Mbps and then 1Mbps and then *never* go back
We're running a CF-based Prism card with STA fw 1.8.3 on a Linux 2.4
kernel w/Wireless Extension v18.
I've reproduced this with a clean copy of v0.3.9 using wireless tools
and hostap-utils on an x86 laptop running Fedora Core4 ( with the same
Prism card and STA fw ).
I looked at the fix mentioned in the ChangeLog; the hostap_info.c
function handle_info_queue_scan_results() calls prism2_host_roaming() if
the driver is currently associated as a station and 'host_roaming == 2'.
I found that prism2_host_roaming() function only looks at
local->last_scan_results. It never looks at
local->last_hostscan_results which is populated in response to a
hostscan operation ( which always happens if the STA fw is >=1.3.1 ).
So, the Join request never happens.
I tried a quick patch of this code to check local->last_hostscan_results
instead, as we're always running STA fw >= 1.3.1. The JOIN with the
currrent AP happens, however this doesn't seem to jog the firmware out
of it's bad state. We still see the bitrate hang at 1Mbps.
One other problem I see is that if last_[host]scan_results doesn't
contain the currently associated AP, the JOIN request will be issued for
the first AP in last_scan_results ( or hostscan_results ) array.
I've also tried manually setting the bitrate to 11Mbps and this just
causes the AP to disconnect.
Has anyone else run into this behavior?
More information about the Hostap