summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mwifiex
diff options
context:
space:
mode:
authorAvinash Patil <patila@marvell.com>2013-05-17 17:50:22 -0700
committerJohn W. Linville <linville@tuxdriver.com>2013-05-22 15:08:53 -0400
commitbdd4d6bf59c046e5a3d1ac67ba7b1c9ea540b6e3 (patch)
tree453ed6d168318b9fcd4b29b2138b2ea931bfee95 /drivers/net/wireless/mwifiex
parent4c1079e1583958b83d7355ccbba686ad08b67015 (diff)
downloadop-kernel-dev-bdd4d6bf59c046e5a3d1ac67ba7b1c9ea540b6e3.zip
op-kernel-dev-bdd4d6bf59c046e5a3d1ac67ba7b1c9ea540b6e3.tar.gz
mwifiex: avoid deleting all stations during mwifiex_del_sta_entry()
During deleting a station entry from associated sta_list, we are supposed to delete entry only for this particular mac address. This patch is a bug fix wherein we were deleting all entries from list; fix this by removing list_for_each_entry_safe() call. Signed-off-by: Avinash Patil <patila@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/mwifiex')
-rw-r--r--drivers/net/wireless/mwifiex/uap_event.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/net/wireless/mwifiex/uap_event.c b/drivers/net/wireless/mwifiex/uap_event.c
index 21c640d..77fb533 100644
--- a/drivers/net/wireless/mwifiex/uap_event.c
+++ b/drivers/net/wireless/mwifiex/uap_event.c
@@ -107,18 +107,15 @@ mwifiex_set_sta_ht_cap(struct mwifiex_private *priv, const u8 *ies,
*/
static void mwifiex_del_sta_entry(struct mwifiex_private *priv, u8 *mac)
{
- struct mwifiex_sta_node *node, *tmp;
+ struct mwifiex_sta_node *node;
unsigned long flags;
spin_lock_irqsave(&priv->sta_list_spinlock, flags);
node = mwifiex_get_sta_entry(priv, mac);
if (node) {
- list_for_each_entry_safe(node, tmp, &priv->sta_list,
- list) {
- list_del(&node->list);
- kfree(node);
- }
+ list_del(&node->list);
+ kfree(node);
}
spin_unlock_irqrestore(&priv->sta_list_spinlock, flags);
OpenPOWER on IntegriCloud