aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/cfg.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2013-04-03 06:27:29 -0400
committerThomas Gleixner <tglx@linutronix.de>2013-04-03 06:27:29 -0400
commit0ed2aef9b3bffe598045b62a31a50d912eee92d8 (patch)
treed7dda12955c838f531727d2775d09c4e04bdf066 /net/mac80211/cfg.c
parentcfea7d7e452f57682a0bb55a55e9f79c569558c2 (diff)
parent8011657b9e63cb2e914b9a0f75233b910c1854cb (diff)
Merge branch 'fortglx/3.10/time' of git://git.linaro.org/people/jstultz/linux into timers/core
Diffstat (limited to 'net/mac80211/cfg.c')
-rw-r--r--net/mac80211/cfg.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index 808f5fcd1ced..fb306814576a 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -3290,14 +3290,19 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy,
3290 int ret = -ENODATA; 3290 int ret = -ENODATA;
3291 3291
3292 rcu_read_lock(); 3292 rcu_read_lock();
3293 if (local->use_chanctx) { 3293 chanctx_conf = rcu_dereference(sdata->vif.chanctx_conf);
3294 chanctx_conf = rcu_dereference(sdata->vif.chanctx_conf); 3294 if (chanctx_conf) {
3295 if (chanctx_conf) { 3295 *chandef = chanctx_conf->def;
3296 *chandef = chanctx_conf->def; 3296 ret = 0;
3297 ret = 0; 3297 } else if (local->open_count > 0 &&
3298 } 3298 local->open_count == local->monitors &&
3299 } else if (local->open_count == local->monitors) { 3299 sdata->vif.type == NL80211_IFTYPE_MONITOR) {
3300 *chandef = local->monitor_chandef; 3300 if (local->use_chanctx)
3301 *chandef = local->monitor_chandef;
3302 else
3303 cfg80211_chandef_create(chandef,
3304 local->_oper_channel,
3305 local->_oper_channel_type);
3301 ret = 0; 3306 ret = 0;
3302 } 3307 }
3303 rcu_read_unlock(); 3308 rcu_read_unlock();