|
@@ -60,9 +60,10 @@ int mwifiex_wait_queue_complete(struct mwifiex_adapter *adapter,
|
|
|
int status;
|
|
|
|
|
|
/* Wait for completion */
|
|
|
- status = wait_event_interruptible(adapter->cmd_wait_q.wait,
|
|
|
- *(cmd_queued->condition));
|
|
|
- if (status) {
|
|
|
+ status = wait_event_interruptible_timeout(adapter->cmd_wait_q.wait,
|
|
|
+ *(cmd_queued->condition),
|
|
|
+ (12 * HZ));
|
|
|
+ if (status <= 0) {
|
|
|
dev_err(adapter->dev, "cmd_wait_q terminated: %d\n", status);
|
|
|
mwifiex_cancel_all_pending_cmd(adapter);
|
|
|
return status;
|