On Wed, 2011-03-30 at 16:35 +0200, Ohad Ben-Cohen wrote: > The wl12xx device normally drops all frames coming from BSSID > it is not joined with. > > This behavior is configured today by the wl12xx driver in response > to a handful of ieee80211_bss_change and ieee80211_conf_changed > notification flags, such as BSS_CHANGED_ASSOC, BSS_CHANGED_BSSID, > IEEE80211_CONF_CHANGE_IDLE, etc.. > > This breaks when we roam to a new BSSID, where authentication frames > are sent before any BSS_CHANGED/CONF_CHANGED flags are received. > When this happens the hardware silently drops the authentication > responses, and the roaming fails. > > Ideally this aggressive filtering behavior of the device should be disabled > upon a notification from mac80211. Such notification will take place > after multi-channel support will be added: mac80211 will likely send a > remain-on-channel notification to drivers when entering sensitive > states (like authentication), otherwise the firmware might jump to > different channels (to serve a different role). > > Until those notifications materialize, disable the hw BSSID filter > when authentication requests are sent, so roaming would work. > > Signed-off-by: Ohad Ben-Cohen <ohad@xxxxxxxxxx> > --- Looks good! Reviewed-by: Luciano Coelho <coelho@xxxxxx> Applied to wl12xx.git. Thanks! -- Cheers, Luca. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html