|
|
17e7d60 |
From 6e9344fd8e90ff0bd8e74c15ec7c21eae7d54bd3 Mon Sep 17 00:00:00 2001
|
|
|
17e7d60 |
From: Amitkumar Karwar <akarwar@marvell.com>
|
|
|
17e7d60 |
Date: Thu, 12 Mar 2015 00:38:40 -0700
|
|
|
17e7d60 |
Subject: [PATCH] mwifiex: use del_timer variant in interrupt context
|
|
|
17e7d60 |
|
|
|
17e7d60 |
We might be in interrupt context at few places. So replace
|
|
|
17e7d60 |
del_timer_sync() with del_timer(). This patch fixes a kernel
|
|
|
17e7d60 |
trace problem seen occasionally during our testing.
|
|
|
17e7d60 |
|
|
|
17e7d60 |
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
|
|
|
17e7d60 |
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
|
17e7d60 |
---
|
|
|
17e7d60 |
drivers/net/wireless/mwifiex/main.c | 2 +-
|
|
|
17e7d60 |
drivers/net/wireless/mwifiex/sta_event.c | 4 ++--
|
|
|
17e7d60 |
drivers/net/wireless/mwifiex/usb.c | 2 +-
|
|
|
17e7d60 |
3 files changed, 4 insertions(+), 4 deletions(-)
|
|
|
17e7d60 |
|
|
|
17e7d60 |
diff --git a/drivers/net/wireless/mwifiex/main.c b/drivers/net/wireless/mwifiex/main.c
|
|
|
17e7d60 |
index 74488ab..42bf884 100644
|
|
|
17e7d60 |
--- a/drivers/net/wireless/mwifiex/main.c
|
|
|
17e7d60 |
+++ b/drivers/net/wireless/mwifiex/main.c
|
|
|
17e7d60 |
@@ -247,7 +247,7 @@ process_start:
|
|
|
17e7d60 |
if (IS_CARD_RX_RCVD(adapter)) {
|
|
|
17e7d60 |
adapter->data_received = false;
|
|
|
17e7d60 |
adapter->pm_wakeup_fw_try = false;
|
|
|
17e7d60 |
- del_timer_sync(&adapter->wakeup_timer);
|
|
|
17e7d60 |
+ del_timer(&adapter->wakeup_timer);
|
|
|
17e7d60 |
if (adapter->ps_state == PS_STATE_SLEEP)
|
|
|
17e7d60 |
adapter->ps_state = PS_STATE_AWAKE;
|
|
|
17e7d60 |
} else {
|
|
|
17e7d60 |
diff --git a/drivers/net/wireless/mwifiex/sta_event.c b/drivers/net/wireless/mwifiex/sta_event.c
|
|
|
17e7d60 |
index 64c4223..0dc7a1d 100644
|
|
|
17e7d60 |
--- a/drivers/net/wireless/mwifiex/sta_event.c
|
|
|
17e7d60 |
+++ b/drivers/net/wireless/mwifiex/sta_event.c
|
|
|
17e7d60 |
@@ -312,7 +312,7 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
|
|
|
17e7d60 |
adapter->ps_state = PS_STATE_AWAKE;
|
|
|
17e7d60 |
adapter->pm_wakeup_card_req = false;
|
|
|
17e7d60 |
adapter->pm_wakeup_fw_try = false;
|
|
|
17e7d60 |
- del_timer_sync(&adapter->wakeup_timer);
|
|
|
17e7d60 |
+ del_timer(&adapter->wakeup_timer);
|
|
|
17e7d60 |
break;
|
|
|
17e7d60 |
}
|
|
|
17e7d60 |
if (!mwifiex_send_null_packet
|
|
|
17e7d60 |
@@ -327,7 +327,7 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
|
|
|
17e7d60 |
adapter->ps_state = PS_STATE_AWAKE;
|
|
|
17e7d60 |
adapter->pm_wakeup_card_req = false;
|
|
|
17e7d60 |
adapter->pm_wakeup_fw_try = false;
|
|
|
17e7d60 |
- del_timer_sync(&adapter->wakeup_timer);
|
|
|
17e7d60 |
+ del_timer(&adapter->wakeup_timer);
|
|
|
17e7d60 |
|
|
|
17e7d60 |
break;
|
|
|
17e7d60 |
|
|
|
17e7d60 |
diff --git a/drivers/net/wireless/mwifiex/usb.c b/drivers/net/wireless/mwifiex/usb.c
|
|
|
17e7d60 |
index 2238730..8beb38c 100644
|
|
|
17e7d60 |
--- a/drivers/net/wireless/mwifiex/usb.c
|
|
|
17e7d60 |
+++ b/drivers/net/wireless/mwifiex/usb.c
|
|
|
17e7d60 |
@@ -1006,7 +1006,7 @@ static int mwifiex_pm_wakeup_card(struct mwifiex_adapter *adapter)
|
|
|
17e7d60 |
{
|
|
|
17e7d60 |
/* Simulation of HS_AWAKE event */
|
|
|
17e7d60 |
adapter->pm_wakeup_fw_try = false;
|
|
|
17e7d60 |
- del_timer_sync(&adapter->wakeup_timer);
|
|
|
17e7d60 |
+ del_timer(&adapter->wakeup_timer);
|
|
|
17e7d60 |
adapter->pm_wakeup_card_req = false;
|
|
|
17e7d60 |
adapter->ps_state = PS_STATE_AWAKE;
|
|
|
17e7d60 |
|
|
|
17e7d60 |
--
|
|
|
17e7d60 |
2.4.1
|
|
|
17e7d60 |
|