mac80211: clean up channel use in ieee80211_config_ht_tx
authorJohannes Berg <johannes.berg@intel.com>
Fri, 8 Feb 2013 12:15:55 +0000 (13:15 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 15 Feb 2013 08:41:35 +0000 (09:41 +0100)
The channel use is confusing, some uses the channel
context and some the bss_conf.chandef. The latter is
fine, so get rid of the channel context part.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mlme.c

index 03f2788..8fdf1e1 100644 (file)
@@ -181,7 +181,6 @@ static u32 ieee80211_config_ht_tx(struct ieee80211_sub_if_data *sdata,
 {
        struct ieee80211_local *local = sdata->local;
        struct ieee80211_supported_band *sband;
-       struct ieee80211_chanctx_conf *chanctx_conf;
        struct ieee80211_channel *chan;
        u32 changed = 0;
        u16 ht_opmode;
@@ -190,23 +189,16 @@ static u32 ieee80211_config_ht_tx(struct ieee80211_sub_if_data *sdata,
        if (WARN_ON_ONCE(!sta))
                return 0;
 
-       rcu_read_lock();
-       chanctx_conf = rcu_dereference(sdata->vif.chanctx_conf);
-       if (WARN_ON(!chanctx_conf)) {
-               rcu_read_unlock();
-               return 0;
-       }
-       chan = chanctx_conf->def.chan;
-       rcu_read_unlock();
+       chan = sdata->vif.bss_conf.chandef.chan;
        sband = local->hw.wiphy->bands[chan->band];
 
        switch (sdata->vif.bss_conf.chandef.width) {
        case NL80211_CHAN_WIDTH_40:
-               if (sdata->vif.bss_conf.chandef.chan->center_freq >
+               if (chan->center_freq >
                                sdata->vif.bss_conf.chandef.center_freq1 &&
                    chan->flags & IEEE80211_CHAN_NO_HT40MINUS)
                        disable_40 = true;
-               if (sdata->vif.bss_conf.chandef.chan->center_freq <
+               if (chan->center_freq <
                                sdata->vif.bss_conf.chandef.center_freq1 &&
                    chan->flags & IEEE80211_CHAN_NO_HT40PLUS)
                        disable_40 = true;