On 03/14/2013 03:17 PM, greearb@xxxxxxxxxxxxxxx wrote:
From: Ben Greear <greearb@xxxxxxxxxxxxxxx> I found another crash when deleting lots of virtual stations in a congested environment. I think the problem is that the ieee80211_mlme_notify_scan_completed could call ieee80211_restart_sta_timer for a non-associated interface that was about to be deleted. With the following patch I am unable to reproduce the crash.
Nevermind..this seems to break association...will work on this some more. Ben
Signed-off-by: Ben Greear <greearb@xxxxxxxxxxxxxxx> --- :100644 100644 81e0619... a1cc8c4... M net/mac80211/mlme.c net/mac80211/mlme.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 81e0619..a1cc8c4 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -2931,6 +2931,9 @@ static void ieee80211_restart_sta_timer(struct ieee80211_sub_if_data *sdata) u32 flags; if (sdata->vif.type == NL80211_IFTYPE_STATION) { + if (unlikely(!sdata->u.mgd.associated)) + return; + __ieee80211_stop_poll(sdata); /* let's probe the connection once */
-- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html