summaryrefslogtreecommitdiff
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorAvinash Patil <patila@marvell.com>2014-12-05 17:53:39 (GMT)
committerJohn W. Linville <linville@tuxdriver.com>2014-12-05 19:15:25 (GMT)
commitdda9ddeb2638d364c42e143e2d351b160767b39f (patch)
treea0eae3f07733b426e4d09a3529b78702ffa0dca8 /drivers/net/wireless
parentf700076a9d1024a8184a7b6642edebd53a46a481 (diff)
downloadlinux-dda9ddeb2638d364c42e143e2d351b160767b39f.tar.xz
mwifiex: do not delete station entries in del_sta handler
A crash was observed while cfg80211 del_station handler is called while stopping AP. This was happening because we were deleting station list and Rx reorder table entries in del_sta handler. While station entry is being deleted here, it may happen that station deauth event from FW would also try to delete station entry. This patch fixes this crash by not deleting station entries in del_station handler. Entry would be deleted while processing station deauth event; which is triggered by del_station command to FW. Reported by: Tim Shepard <shep@xplot.org> Signed-off-by: Avinash Patil <patila@marvell.com> Signed-off-by: Cathy Luo <cluo@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/mwifiex/cfg80211.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c
index f881044..e111ff5 100644
--- a/drivers/net/wireless/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/mwifiex/cfg80211.c
@@ -1308,7 +1308,6 @@ mwifiex_cfg80211_del_station(struct wiphy *wiphy, struct net_device *dev,
HostCmd_ACT_GEN_SET, 0,
sta_node->mac_addr, true))
return -1;
- mwifiex_uap_del_sta_data(priv, sta_node);
}
} else {
wiphy_dbg(wiphy, "%s: mac address %pM\n", __func__,
@@ -1321,7 +1320,6 @@ mwifiex_cfg80211_del_station(struct wiphy *wiphy, struct net_device *dev,
HostCmd_ACT_GEN_SET, 0,
sta_node->mac_addr, true))
return -1;
- mwifiex_uap_del_sta_data(priv, sta_node);
}
}