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)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 11 Jul 2014 12:33:37 +0000 (13:33 +0100)
commit c7d37a66e345df2fdf1aa7b2c9a6d3d53846ca5b upstream.

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]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
net/mac80211/ibss.c

index 9e20cb8..1c018d1 100644 (file)
@@ -914,6 +914,7 @@ int ieee80211_ibss_join(struct ieee80211_sub_if_data *sdata,
 
        sdata->u.ibss.privacy = params->privacy;
        sdata->u.ibss.basic_rates = params->basic_rates;
+       sdata->u.ibss.last_scan_completed = jiffies;
        memcpy(sdata->vif.bss_conf.mcast_rate, params->mcast_rate,
               sizeof(params->mcast_rate));