diff options
author | David S. Miller <davem@davemloft.net> | 2009-12-30 16:51:29 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-30 16:51:29 -0500 |
commit | 3a999e6eb5d277cd6a321dcda3fc43c3d9e4e4b8 (patch) | |
tree | b0ad8d03710ee556e97515ba1c949233859391ce /net/mac80211/main.c | |
parent | 6cd9b49d7328c4656bfc17fcb47fb814955d40d2 (diff) | |
parent | 891dc5e73783eeabd2a704a9425e2a199b39c9f9 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index d4426748ab10..d0a14d953f08 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -107,6 +107,9 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed) | |||
107 | if (scan_chan) { | 107 | if (scan_chan) { |
108 | chan = scan_chan; | 108 | chan = scan_chan; |
109 | channel_type = NL80211_CHAN_NO_HT; | 109 | channel_type = NL80211_CHAN_NO_HT; |
110 | } else if (local->tmp_channel) { | ||
111 | chan = scan_chan = local->tmp_channel; | ||
112 | channel_type = local->tmp_channel_type; | ||
110 | } else { | 113 | } else { |
111 | chan = local->oper_channel; | 114 | chan = local->oper_channel; |
112 | channel_type = local->oper_channel_type; | 115 | channel_type = local->oper_channel_type; |
@@ -212,7 +215,7 @@ void ieee80211_bss_info_change_notify(struct ieee80211_sub_if_data *sdata, | |||
212 | } | 215 | } |
213 | 216 | ||
214 | if (changed & BSS_CHANGED_BEACON_ENABLED) { | 217 | if (changed & BSS_CHANGED_BEACON_ENABLED) { |
215 | if (local->quiescing || !netif_running(sdata->dev) || | 218 | if (local->quiescing || !ieee80211_sdata_running(sdata) || |
216 | test_bit(SCAN_SW_SCANNING, &local->scanning)) { | 219 | test_bit(SCAN_SW_SCANNING, &local->scanning)) { |
217 | sdata->vif.bss_conf.enable_beacon = false; | 220 | sdata->vif.bss_conf.enable_beacon = false; |
218 | } else { | 221 | } else { |
@@ -359,9 +362,7 @@ struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len, | |||
359 | WIPHY_FLAG_4ADDR_STATION; | 362 | WIPHY_FLAG_4ADDR_STATION; |
360 | wiphy->privid = mac80211_wiphy_privid; | 363 | wiphy->privid = mac80211_wiphy_privid; |
361 | 364 | ||
362 | /* Yes, putting cfg80211_bss into ieee80211_bss is a hack */ | 365 | wiphy->bss_priv_size = sizeof(struct ieee80211_bss); |
363 | wiphy->bss_priv_size = sizeof(struct ieee80211_bss) - | ||
364 | sizeof(struct cfg80211_bss); | ||
365 | 366 | ||
366 | local = wiphy_priv(wiphy); | 367 | local = wiphy_priv(wiphy); |
367 | 368 | ||
@@ -395,6 +396,8 @@ struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len, | |||
395 | 396 | ||
396 | INIT_DELAYED_WORK(&local->scan_work, ieee80211_scan_work); | 397 | INIT_DELAYED_WORK(&local->scan_work, ieee80211_scan_work); |
397 | 398 | ||
399 | ieee80211_work_init(local); | ||
400 | |||
398 | INIT_WORK(&local->restart_work, ieee80211_restart_work); | 401 | INIT_WORK(&local->restart_work, ieee80211_restart_work); |
399 | 402 | ||
400 | INIT_WORK(&local->reconfig_filter, ieee80211_reconfig_filter); | 403 | INIT_WORK(&local->reconfig_filter, ieee80211_reconfig_filter); |