diff options
Diffstat (limited to 'drivers/net/wireless/mac80211_hwsim.c')
-rw-r--r-- | drivers/net/wireless/mac80211_hwsim.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index 4befa48dbc34..e9b5442f1dda 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c | |||
@@ -788,7 +788,7 @@ static const struct ieee80211_ops mac80211_hwsim_ops = | |||
788 | static void mac80211_hwsim_free(void) | 788 | static void mac80211_hwsim_free(void) |
789 | { | 789 | { |
790 | struct list_head tmplist, *i, *tmp; | 790 | struct list_head tmplist, *i, *tmp; |
791 | struct mac80211_hwsim_data *data; | 791 | struct mac80211_hwsim_data *data, *tmpdata; |
792 | 792 | ||
793 | INIT_LIST_HEAD(&tmplist); | 793 | INIT_LIST_HEAD(&tmplist); |
794 | 794 | ||
@@ -797,7 +797,7 @@ static void mac80211_hwsim_free(void) | |||
797 | list_move(i, &tmplist); | 797 | list_move(i, &tmplist); |
798 | spin_unlock_bh(&hwsim_radio_lock); | 798 | spin_unlock_bh(&hwsim_radio_lock); |
799 | 799 | ||
800 | list_for_each_entry(data, &tmplist, list) { | 800 | list_for_each_entry_safe(data, tmpdata, &tmplist, list) { |
801 | debugfs_remove(data->debugfs_group); | 801 | debugfs_remove(data->debugfs_group); |
802 | debugfs_remove(data->debugfs_ps); | 802 | debugfs_remove(data->debugfs_ps); |
803 | debugfs_remove(data->debugfs); | 803 | debugfs_remove(data->debugfs); |
@@ -1246,8 +1246,8 @@ static void __exit exit_mac80211_hwsim(void) | |||
1246 | { | 1246 | { |
1247 | printk(KERN_DEBUG "mac80211_hwsim: unregister radios\n"); | 1247 | printk(KERN_DEBUG "mac80211_hwsim: unregister radios\n"); |
1248 | 1248 | ||
1249 | unregister_netdev(hwsim_mon); | ||
1250 | mac80211_hwsim_free(); | 1249 | mac80211_hwsim_free(); |
1250 | unregister_netdev(hwsim_mon); | ||
1251 | } | 1251 | } |
1252 | 1252 | ||
1253 | 1253 | ||