diff options
Diffstat (limited to 'net/mac80211/ieee80211.c')
-rw-r--r-- | net/mac80211/ieee80211.c | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c index 703f998292c8..8f472379b128 100644 --- a/net/mac80211/ieee80211.c +++ b/net/mac80211/ieee80211.c | |||
@@ -786,42 +786,6 @@ struct dev_mc_list *ieee80211_get_mc_list_item(struct ieee80211_hw *hw, | |||
786 | } | 786 | } |
787 | EXPORT_SYMBOL(ieee80211_get_mc_list_item); | 787 | EXPORT_SYMBOL(ieee80211_get_mc_list_item); |
788 | 788 | ||
789 | static void ieee80211_stat_refresh(unsigned long data) | ||
790 | { | ||
791 | struct ieee80211_local *local = (struct ieee80211_local *) data; | ||
792 | struct sta_info *sta; | ||
793 | struct ieee80211_sub_if_data *sdata; | ||
794 | |||
795 | if (!local->stat_time) | ||
796 | return; | ||
797 | |||
798 | /* go through all stations */ | ||
799 | read_lock_bh(&local->sta_lock); | ||
800 | list_for_each_entry(sta, &local->sta_list, list) { | ||
801 | sta->channel_use = (sta->channel_use_raw / local->stat_time) / | ||
802 | CHAN_UTIL_PER_10MS; | ||
803 | sta->channel_use_raw = 0; | ||
804 | } | ||
805 | read_unlock_bh(&local->sta_lock); | ||
806 | |||
807 | /* go through all subinterfaces */ | ||
808 | read_lock(&local->sub_if_lock); | ||
809 | list_for_each_entry(sdata, &local->sub_if_list, list) { | ||
810 | sdata->channel_use = (sdata->channel_use_raw / | ||
811 | local->stat_time) / CHAN_UTIL_PER_10MS; | ||
812 | sdata->channel_use_raw = 0; | ||
813 | } | ||
814 | read_unlock(&local->sub_if_lock); | ||
815 | |||
816 | /* hardware interface */ | ||
817 | local->channel_use = (local->channel_use_raw / | ||
818 | local->stat_time) / CHAN_UTIL_PER_10MS; | ||
819 | local->channel_use_raw = 0; | ||
820 | |||
821 | local->stat_timer.expires = jiffies + HZ * local->stat_time / 100; | ||
822 | add_timer(&local->stat_timer); | ||
823 | } | ||
824 | |||
825 | void ieee80211_tx_status_irqsafe(struct ieee80211_hw *hw, | 789 | void ieee80211_tx_status_irqsafe(struct ieee80211_hw *hw, |
826 | struct sk_buff *skb, | 790 | struct sk_buff *skb, |
827 | struct ieee80211_tx_status *status) | 791 | struct ieee80211_tx_status *status) |
@@ -1260,9 +1224,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len, | |||
1260 | INIT_LIST_HEAD(&local->sub_if_list); | 1224 | INIT_LIST_HEAD(&local->sub_if_list); |
1261 | 1225 | ||
1262 | INIT_DELAYED_WORK(&local->scan_work, ieee80211_sta_scan_work); | 1226 | INIT_DELAYED_WORK(&local->scan_work, ieee80211_sta_scan_work); |
1263 | init_timer(&local->stat_timer); | ||
1264 | local->stat_timer.function = ieee80211_stat_refresh; | ||
1265 | local->stat_timer.data = (unsigned long) local; | ||
1266 | ieee80211_rx_bss_list_init(mdev); | 1227 | ieee80211_rx_bss_list_init(mdev); |
1267 | 1228 | ||
1268 | sta_info_init(local); | 1229 | sta_info_init(local); |
@@ -1461,9 +1422,6 @@ void ieee80211_unregister_hw(struct ieee80211_hw *hw) | |||
1461 | 1422 | ||
1462 | rtnl_unlock(); | 1423 | rtnl_unlock(); |
1463 | 1424 | ||
1464 | if (local->stat_time) | ||
1465 | del_timer_sync(&local->stat_timer); | ||
1466 | |||
1467 | ieee80211_rx_bss_list_deinit(local->mdev); | 1425 | ieee80211_rx_bss_list_deinit(local->mdev); |
1468 | ieee80211_clear_tx_pending(local); | 1426 | ieee80211_clear_tx_pending(local); |
1469 | sta_info_stop(local); | 1427 | sta_info_stop(local); |