Skip to content

Commit

Permalink
mwifiex: cancel cmd timer and free curr_cmd in shutdown process
Browse files Browse the repository at this point in the history
curr_cmd points to the command that is in processing or waiting
for its command response from firmware. If the function shutdown
happens to occur at this time we should cancel the cmd timer and
put the command back to free queue.

Cc: <stable@vger.kernel.org> # 3.8
Tested-by: Marco Cesarano <marco@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
bingz authored and linvjw committed Mar 18, 2013
1 parent a3e240c commit 084c718
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions drivers/net/wireless/mwifiex/init.c
Expand Up @@ -709,6 +709,14 @@ mwifiex_shutdown_drv(struct mwifiex_adapter *adapter)
return ret;
}

/* cancel current command */
if (adapter->curr_cmd) {
dev_warn(adapter->dev, "curr_cmd is still in processing\n");
del_timer(&adapter->cmd_timer);
mwifiex_insert_cmd_to_free_q(adapter, adapter->curr_cmd);
adapter->curr_cmd = NULL;
}

/* shut down mwifiex */
dev_dbg(adapter->dev, "info: shutdown mwifiex...\n");

Expand Down

0 comments on commit 084c718

Please sign in to comment.