diff options
author | Johannes Berg <johannes.berg@intel.com> | 2013-01-29 15:02:27 +0100 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-01-31 14:28:43 +0100 |
commit | 1672c0e31917f49d31d30d79067103432bc20cc7 (patch) | |
tree | cc5b6b0017129b5748cfa2bace537d43c991d66c /net/mac80211/scan.c | |
parent | cfg80211: remove free_priv BSS API (diff) | |
download | linux-1672c0e31917f49d31d30d79067103432bc20cc7.tar.xz linux-1672c0e31917f49d31d30d79067103432bc20cc7.zip |
mac80211: start auth/assoc timeout on frame status
When sending authentication/association frames they
might take a bit of time to go out because we may
have to synchronise with the AP, in particular in
the case where it's really a P2P GO. In this case
the 200ms fixed timeout could potentially be too
short if the beacon interval is relatively large.
For drivers that report TX status we can do better.
Instead of starting the timeout directly, start it
only when the frame status arrives. Since then the
frame was out on the air, we can wait shorter (the
typical response time is supposed to be 30ms, wait
100ms.) Also, if the frame failed to be transmitted
try again right away instead of waiting.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/scan.c')
-rw-r--r-- | net/mac80211/scan.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index 061595ae513b..85d0e5ee55a2 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c @@ -389,7 +389,8 @@ static void ieee80211_scan_state_send_probe(struct ieee80211_local *local, local->scan_req->ssids[i].ssid_len, local->scan_req->ie, local->scan_req->ie_len, local->scan_req->rates[band], false, - local->scan_req->no_cck, + local->scan_req->no_cck ? + IEEE80211_TX_CTL_NO_CCK_RATE : 0, local->hw.conf.channel, true); /* |