mwifiex: remove global variable cmd_wait_q_required
There is a race condition while queuing synchronous command and asynchronous command requested from different threads, because the wait_q_enabled flag is set based on a global variable cmd_wait_q_required. The issue is fixed by removing this global variable and using a unified function with an argument 'sync' passed into the function. Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
6b7dce12b3
commit
fa0ecbb990
18 changed files with 255 additions and 298 deletions
|
@ -150,9 +150,9 @@ int mwifiex_process_uap_event(struct mwifiex_private *priv)
|
|||
case EVENT_ADDBA:
|
||||
dev_dbg(adapter->dev, "event: ADDBA Request\n");
|
||||
if (priv->media_connected)
|
||||
mwifiex_send_cmd_async(priv, HostCmd_CMD_11N_ADDBA_RSP,
|
||||
HostCmd_ACT_GEN_SET, 0,
|
||||
adapter->event_body);
|
||||
mwifiex_send_cmd(priv, HostCmd_CMD_11N_ADDBA_RSP,
|
||||
HostCmd_ACT_GEN_SET, 0,
|
||||
adapter->event_body, false);
|
||||
break;
|
||||
case EVENT_DELBA:
|
||||
dev_dbg(adapter->dev, "event: DELBA Request\n");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue