mac80211: fix IBSS join by initializing last_scan_completed
authorKrzysztof Hałasa <khalasa@piap.pl>
Mon, 26 May 2014 12:14:46 +0000 (14:14 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 27 May 2014 06:54:01 +0000 (08:54 +0200)
Without this fix, freshly rebooted Linux creates a new IBSS
instead of joining an existing one. Only when jiffies counter
overflows after 5 minutes the IBSS can be successfully joined.

Signed-off-by: Krzysztof Hałasa <khalasa@piap.pl>
[edit commit message slightly]
Cc: stable@vger.kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/ibss.c

index 1bbac94da58d6a33218e8dc7eb474a7a5d26122a..18ee0a256b1e300d5fc4805d110af12ca1a77308 100644 (file)
@@ -1677,6 +1677,7 @@ int ieee80211_ibss_join(struct ieee80211_sub_if_data *sdata,
        sdata->u.ibss.control_port = params->control_port;
        sdata->u.ibss.userspace_handles_dfs = params->userspace_handles_dfs;
        sdata->u.ibss.basic_rates = params->basic_rates;
+       sdata->u.ibss.last_scan_completed = jiffies;
 
        /* fix basic_rates if channel does not support these rates */
        rate_flags = ieee80211_chandef_rate_flags(&params->chandef);