diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2013-01-31 15:03:55 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-03-20 12:10:57 +0100 |
commit | 2d5d50ee596361566f7f84300117cba7d7672bc5 (patch) | |
tree | b9006f547092838143a54615dceae9c0680e2156 /drivers/net/wireless/iwlwifi/dvm/ucode.c | |
parent | 4620020b5d7ca34d1c03fa98b0ca457320cb7d71 (diff) |
iwlwifi: dvm: don't send HCMD in restart flow
There is a race between the restart flow and the workers.
The workers are cancelled after the fw is already killed
and might send HCMD when there is fw to handle them.
Simply check that there is a fw to which the HCMD can be
sent before actually sending it.
Cc: stable@vger.kernel.org
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/dvm/ucode.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/dvm/ucode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/dvm/ucode.c b/drivers/net/wireless/iwlwifi/dvm/ucode.c index 736fe9bb140e..1a4ac9236a44 100644 --- a/drivers/net/wireless/iwlwifi/dvm/ucode.c +++ b/drivers/net/wireless/iwlwifi/dvm/ucode.c @@ -367,6 +367,8 @@ int iwl_load_ucode_wait_alive(struct iwl_priv *priv, return -EIO; } + priv->ucode_loaded = true; + if (ucode_type != IWL_UCODE_WOWLAN) { /* delay a bit to give rfkill time to run */ msleep(5); @@ -380,8 +382,6 @@ int iwl_load_ucode_wait_alive(struct iwl_priv *priv, return ret; } - priv->ucode_loaded = true; - return 0; } |