aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorReinette Chatre <reinette.chatre@intel.com>2009-01-28 12:38:30 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-02-04 16:11:42 -0500
commit5e46882e2ecacd2ebd1bfba3caaa4a25ffbcb94d (patch)
treea07808bf3f9631f8a504e08ad562fd7797b20ba2 /drivers/net/wireless
parent55128bc23e9ab44e97f81f6cd349035230ee59a6 (diff)
iwlwifi: clean key table in iwl_clear_stations_table
Cleans uCode key table bit map iwl_clear_stations_table since all stations are cleared also the key table must be. Since the keys are not removed properly on suspend by mac80211 this may result in exhausting key table on resume leading to memory corruption during removal Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-sta.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.c b/drivers/net/wireless/iwlwifi/iwl-sta.c
index 412f66bac1af..70a8b21ca39b 100644
--- a/drivers/net/wireless/iwlwifi/iwl-sta.c
+++ b/drivers/net/wireless/iwlwifi/iwl-sta.c
@@ -480,6 +480,9 @@ void iwl_clear_stations_table(struct iwl_priv *priv)
480 priv->num_stations = 0; 480 priv->num_stations = 0;
481 memset(priv->stations, 0, sizeof(priv->stations)); 481 memset(priv->stations, 0, sizeof(priv->stations));
482 482
483 /* clean ucode key table bit map */
484 priv->ucode_key_table = 0;
485
483 spin_unlock_irqrestore(&priv->sta_lock, flags); 486 spin_unlock_irqrestore(&priv->sta_lock, flags);
484} 487}
485EXPORT_SYMBOL(iwl_clear_stations_table); 488EXPORT_SYMBOL(iwl_clear_stations_table);