diff options
Diffstat (limited to 'net/mac80211/ieee80211_sta.c')
-rw-r--r-- | net/mac80211/ieee80211_sta.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c index 2a3f8a8e9a43..3584a2bf0186 100644 --- a/net/mac80211/ieee80211_sta.c +++ b/net/mac80211/ieee80211_sta.c | |||
@@ -952,11 +952,8 @@ static void ieee80211_associated(struct net_device *dev, | |||
952 | 952 | ||
953 | rcu_read_unlock(); | 953 | rcu_read_unlock(); |
954 | 954 | ||
955 | if (disassoc && sta) { | 955 | if (disassoc && sta) |
956 | rtnl_lock(); | ||
957 | sta_info_destroy(sta); | 956 | sta_info_destroy(sta); |
958 | rtnl_unlock(); | ||
959 | } | ||
960 | 957 | ||
961 | if (disassoc) { | 958 | if (disassoc) { |
962 | ifsta->state = IEEE80211_DISABLED; | 959 | ifsta->state = IEEE80211_DISABLED; |
@@ -3104,12 +3101,8 @@ static void ieee80211_sta_expire(struct net_device *dev, unsigned long exp_time) | |||
3104 | } | 3101 | } |
3105 | spin_unlock_irqrestore(&local->sta_lock, flags); | 3102 | spin_unlock_irqrestore(&local->sta_lock, flags); |
3106 | 3103 | ||
3107 | synchronize_rcu(); | ||
3108 | |||
3109 | rtnl_lock(); | ||
3110 | list_for_each_entry_safe(sta, tmp, &tmp_list, list) | 3104 | list_for_each_entry_safe(sta, tmp, &tmp_list, list) |
3111 | sta_info_destroy(sta); | 3105 | sta_info_destroy(sta); |
3112 | rtnl_unlock(); | ||
3113 | } | 3106 | } |
3114 | 3107 | ||
3115 | 3108 | ||