mwifiex: do not delete station entries in del_sta handler
authorAvinash Patil <patila@marvell.com>
Fri, 5 Dec 2014 17:53:39 +0000 (23:23 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 5 Dec 2014 19:15:25 +0000 (14:15 -0500)
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>
drivers/net/wireless/mwifiex/cfg80211.c

index f881044e450d2cab435f03dbc33ea22fb148893d..e111ff51cbc1c5bcf0a8c652a4e6d537fa9ac98a 100644 (file)
@@ -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);
                }
        }