diff options
author | Rajkumar Manoharan <rmanohar@qca.qualcomm.com> | 2011-07-07 23:33:39 +0530 |
---|---|---|
committer | Andi Kleen <ak@linux.intel.com> | 2011-08-01 13:55:02 -0700 |
commit | 693560d364dc64efed3da660b62948368132754a (patch) | |
tree | 51a473d7cbba6910d277a7bda4a15a7db029c4ff | |
parent | 81da73dccac71cbbd5949f87a7cacf2925f01e44 (diff) |
mac80211: Restart STA timers only on associated state
[ upstream commit 676b58c27475a9defccc025fea1cbd2b141ee539 ]
A panic was observed when the device is failed to resume properly,
and there are no running interfaces. ieee80211_reconfig tries
to restart STA timers on unassociated state.
Cc: stable@kernel.org
Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
-rw-r--r-- | 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 090b3e63ccf..5ee5db66c2c 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -1995,6 +1995,9 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata) { struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; + if (!ifmgd->associated) + return; + if (test_and_clear_bit(TMR_RUNNING_TIMER, &ifmgd->timers_running)) add_timer(&ifmgd->timer); if (test_and_clear_bit(TMR_RUNNING_CHANSW, &ifmgd->timers_running)) |