Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 111959
b: refs/heads/master
c: 8d09a5e
h: refs/heads/master
i:
  111957: 05f5100
  111955: f9c1645
  111951: f642eb7
v: v3
  • Loading branch information
Tomas Winkler authored and John W. Linville committed Sep 24, 2008
1 parent 419ba5c commit f7e8dd6
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 55d6a3cd0cc85ed90c39cf32e16f622bd003117b
refs/heads/master: 8d09a5e1c36d0dec5728e6c8b0bb5412de09b27b
15 changes: 11 additions & 4 deletions trunk/drivers/net/wireless/iwlwifi/iwl-agn.c
Original file line number Diff line number Diff line change
Expand Up @@ -3190,9 +3190,9 @@ static void iwl4965_bss_info_changed(struct ieee80211_hw *hw,

static int iwl_mac_hw_scan(struct ieee80211_hw *hw, u8 *ssid, size_t ssid_len)
{
int ret;
unsigned long flags;
struct iwl_priv *priv = hw->priv;
int ret;

IWL_DEBUG_MAC80211("enter\n");

Expand All @@ -3211,20 +3211,27 @@ static int iwl_mac_hw_scan(struct ieee80211_hw *hw, u8 *ssid, size_t ssid_len)
goto out_unlock;
}

/* we don't schedule scan within next_scan_jiffies period */
/* We don't schedule scan within next_scan_jiffies period.
* Avoid scanning during possible EAPOL exchange, return
* success immediately.
*/
if (priv->next_scan_jiffies &&
time_after(priv->next_scan_jiffies, jiffies)) {
IWL_DEBUG_SCAN("scan rejected: within next scan period\n");
ret = -EAGAIN;
queue_work(priv->workqueue, &priv->scan_completed);
ret = 0;
goto out_unlock;
}

/* if we just finished scan ask for delay */
if (iwl_is_associated(priv) && priv->last_scan_jiffies &&
time_after(priv->last_scan_jiffies + IWL_DELAY_NEXT_SCAN, jiffies)) {
IWL_DEBUG_SCAN("scan rejected: within previous scan period\n");
ret = -EAGAIN;
queue_work(priv->workqueue, &priv->scan_completed);
ret = 0;
goto out_unlock;
}

if (ssid_len) {
priv->one_direct_scan = 1;
priv->direct_ssid_len = min_t(u8, ssid_len, IW_ESSID_MAX_SIZE);
Expand Down
8 changes: 1 addition & 7 deletions trunk/drivers/net/wireless/iwlwifi/iwl-scan.c
Original file line number Diff line number Diff line change
Expand Up @@ -463,11 +463,6 @@ void iwl_init_scan_params(struct iwl_priv *priv)

int iwl_scan_initiate(struct iwl_priv *priv)
{
if (priv->iw_mode == NL80211_IFTYPE_AP) {
IWL_ERROR("APs don't scan.\n");
return 0;
}

if (!iwl_is_ready_rf(priv)) {
IWL_DEBUG_SCAN("Aborting scan due to not ready.\n");
return -EIO;
Expand All @@ -479,8 +474,7 @@ int iwl_scan_initiate(struct iwl_priv *priv)
}

if (test_bit(STATUS_SCAN_ABORTING, &priv->status)) {
IWL_DEBUG_SCAN("Scan request while abort pending. "
"Queuing.\n");
IWL_DEBUG_SCAN("Scan request while abort pending\n");
return -EAGAIN;
}

Expand Down

0 comments on commit f7e8dd6

Please sign in to comment.