|
@@ -56,7 +56,6 @@ int mwifiex_copy_mcast_addr(struct mwifiex_multicast_list *mlist,
|
|
|
*/
|
|
|
int mwifiex_wait_queue_complete(struct mwifiex_adapter *adapter)
|
|
|
{
|
|
|
- bool cancel_flag = false;
|
|
|
int status;
|
|
|
struct cmd_ctrl_node *cmd_queued;
|
|
|
|
|
@@ -70,14 +69,11 @@ int mwifiex_wait_queue_complete(struct mwifiex_adapter *adapter)
|
|
|
atomic_inc(&adapter->cmd_pending);
|
|
|
|
|
|
/* Wait for completion */
|
|
|
- wait_event_interruptible(adapter->cmd_wait_q.wait,
|
|
|
- *(cmd_queued->condition));
|
|
|
- if (!*(cmd_queued->condition))
|
|
|
- cancel_flag = true;
|
|
|
-
|
|
|
- if (cancel_flag) {
|
|
|
- mwifiex_cancel_pending_ioctl(adapter);
|
|
|
- dev_dbg(adapter->dev, "cmd cancel\n");
|
|
|
+ status = wait_event_interruptible(adapter->cmd_wait_q.wait,
|
|
|
+ *(cmd_queued->condition));
|
|
|
+ if (status) {
|
|
|
+ dev_err(adapter->dev, "cmd_wait_q terminated: %d\n", status);
|
|
|
+ return status;
|
|
|
}
|
|
|
|
|
|
status = adapter->cmd_wait_q.status;
|
|
@@ -496,8 +492,11 @@ int mwifiex_enable_hs(struct mwifiex_adapter *adapter)
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- wait_event_interruptible(adapter->hs_activate_wait_q,
|
|
|
- adapter->hs_activate_wait_q_woken);
|
|
|
+ if (wait_event_interruptible(adapter->hs_activate_wait_q,
|
|
|
+ adapter->hs_activate_wait_q_woken)) {
|
|
|
+ dev_err(adapter->dev, "hs_activate_wait_q terminated\n");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
|
|
|
return true;
|
|
|
}
|