mac80211: fix sdata->radar_required locking
radar_required setting wasn't protected by local->mtx in some places. This should prevent from scanning/radar detection/roc colliding. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:

کامیت شده توسط
Johannes Berg

والد
c46a73f396
کامیت
cc901de1bc
@@ -303,6 +303,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
|
||||
mutex_unlock(&local->mtx);
|
||||
return;
|
||||
}
|
||||
sdata->radar_required = radar_required;
|
||||
mutex_unlock(&local->mtx);
|
||||
|
||||
memcpy(ifibss->bssid, bssid, ETH_ALEN);
|
||||
@@ -318,7 +319,6 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
|
||||
rcu_assign_pointer(ifibss->presp, presp);
|
||||
mgmt = (void *)presp->head;
|
||||
|
||||
sdata->radar_required = radar_required;
|
||||
sdata->vif.bss_conf.enable_beacon = true;
|
||||
sdata->vif.bss_conf.beacon_int = beacon_int;
|
||||
sdata->vif.bss_conf.basic_rates = basic_rates;
|
||||
|
مرجع در شماره جدید
Block a user