|
@@ -959,8 +959,16 @@ static int __wlan_hdd_cfg80211_vendor_scan(struct wiphy *wiphy,
|
|
hdd_enter_dev(wdev->netdev);
|
|
hdd_enter_dev(wdev->netdev);
|
|
|
|
|
|
ret = wlan_hdd_validate_context(hdd_ctx);
|
|
ret = wlan_hdd_validate_context(hdd_ctx);
|
|
- if (0 != ret)
|
|
|
|
|
|
+ if (ret) {
|
|
|
|
+ /*
|
|
|
|
+ * During SSR, if -EBUSY is returned then OBSS vendor scan is
|
|
|
|
+ * not issued immediately.
|
|
|
|
+ */
|
|
|
|
+ if (ret == -EAGAIN)
|
|
|
|
+ return -EBUSY;
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
|
|
+ }
|
|
|
|
|
|
if (wlan_cfg80211_nla_parse(tb, QCA_WLAN_VENDOR_ATTR_SCAN_MAX,
|
|
if (wlan_cfg80211_nla_parse(tb, QCA_WLAN_VENDOR_ATTR_SCAN_MAX,
|
|
data, data_len, scan_policy)) {
|
|
data, data_len, scan_policy)) {
|