aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/main.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-12-30 16:51:29 -0500
committerDavid S. Miller <davem@davemloft.net>2009-12-30 16:51:29 -0500
commit3a999e6eb5d277cd6a321dcda3fc43c3d9e4e4b8 (patch)
treeb0ad8d03710ee556e97515ba1c949233859391ce /net/mac80211/main.c
parent6cd9b49d7328c4656bfc17fcb47fb814955d40d2 (diff)
parent891dc5e73783eeabd2a704a9425e2a199b39c9f9 (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.c11
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);