|
@@ -907,6 +907,7 @@ EXPORT_SYMBOL(freq_reg_info);
|
|
|
int freq_reg_info(struct wiphy *wiphy, u32 center_freq, u32 *bandwidth,
|
|
|
const struct ieee80211_reg_rule **reg_rule)
|
|
|
{
|
|
|
+ assert_cfg80211_lock();
|
|
|
return freq_reg_info_regd(wiphy, center_freq,
|
|
|
bandwidth, reg_rule, NULL);
|
|
|
}
|
|
@@ -1176,6 +1177,8 @@ static void handle_channel_custom(struct wiphy *wiphy,
|
|
|
struct ieee80211_supported_band *sband;
|
|
|
struct ieee80211_channel *chan;
|
|
|
|
|
|
+ assert_cfg80211_lock();
|
|
|
+
|
|
|
sband = wiphy->bands[band];
|
|
|
BUG_ON(chan_idx >= sband->n_channels);
|
|
|
chan = &sband->channels[chan_idx];
|
|
@@ -1214,10 +1217,13 @@ void wiphy_apply_custom_regulatory(struct wiphy *wiphy,
|
|
|
const struct ieee80211_regdomain *regd)
|
|
|
{
|
|
|
enum ieee80211_band band;
|
|
|
+
|
|
|
+ mutex_lock(&cfg80211_mutex);
|
|
|
for (band = 0; band < IEEE80211_NUM_BANDS; band++) {
|
|
|
if (wiphy->bands[band])
|
|
|
handle_band_custom(wiphy, band, regd);
|
|
|
}
|
|
|
+ mutex_unlock(&cfg80211_mutex);
|
|
|
}
|
|
|
EXPORT_SYMBOL(wiphy_apply_custom_regulatory);
|
|
|
|