mwifiex: fix scan_block flag handling
scan_block flag is used to block scan operation when 4 way handshake is in progress. Sometimes it doesn't get cleared due to incomplete association. An example is assoc request/response is done, but add key operation get canceled in some corner cases. As a result, further association/scan operations are blocked. This patch fixes the problem by clearing scan_block flag. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Xinming Hu <huxm@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Родитель
8a1902374f
Коммит
b74d6e740b
|
@ -2250,6 +2250,9 @@ mwifiex_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev,
|
|||
return -EALREADY;
|
||||
}
|
||||
|
||||
if (priv->scan_block)
|
||||
priv->scan_block = false;
|
||||
|
||||
if (adapter->surprise_removed || adapter->is_cmd_timedout) {
|
||||
mwifiex_dbg(adapter, ERROR,
|
||||
"%s: Ignore connection.\t"
|
||||
|
@ -2468,6 +2471,9 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy,
|
|||
return -EBUSY;
|
||||
}
|
||||
|
||||
if (!priv->wdev.current_bss && priv->scan_block)
|
||||
priv->scan_block = false;
|
||||
|
||||
if (!mwifiex_stop_bg_scan(priv))
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче