diff options
author | Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> | 2013-06-20 03:17:20 -0400 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2013-08-07 03:53:36 -0400 |
commit | f32036e823c45cb4974aab1d0ae66d716bfc9aa6 (patch) | |
tree | 62e6915c2601b30cad35c0f6d3dc4d1c49c225fd | |
parent | 8cc8df906f953ae0cfe785720989928021d7fe2d (diff) |
ath6kl: Fix race in heart beat polling
Make sure to cancel heart beat timer before
freeing wmi to avoid potential NULL pointer
dereference.
Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/init.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c index 6a67881f94d6..4f316bdcbab5 100644 --- a/drivers/net/wireless/ath/ath6kl/init.c +++ b/drivers/net/wireless/ath/ath6kl/init.c | |||
@@ -1836,6 +1836,9 @@ void ath6kl_stop_txrx(struct ath6kl *ar) | |||
1836 | 1836 | ||
1837 | clear_bit(WMI_READY, &ar->flag); | 1837 | clear_bit(WMI_READY, &ar->flag); |
1838 | 1838 | ||
1839 | if (ar->fw_recovery.enable) | ||
1840 | del_timer_sync(&ar->fw_recovery.hb_timer); | ||
1841 | |||
1839 | /* | 1842 | /* |
1840 | * After wmi_shudown all WMI events will be dropped. We | 1843 | * After wmi_shudown all WMI events will be dropped. We |
1841 | * need to cleanup the buffers allocated in AP mode and | 1844 | * need to cleanup the buffers allocated in AP mode and |