It makes sense to finish completions as they may be waited for while holding conf_mutex thus delaying hw restart. Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx> --- drivers/net/wireless/ath/ath10k/core.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c index 3f4d28f..bf7c323 100644 --- a/drivers/net/wireless/ath/ath10k/core.c +++ b/drivers/net/wireless/ath/ath10k/core.c @@ -709,6 +709,18 @@ void ath10k_core_restart(struct ath10k *ar) spin_lock_bh(&ar->data_lock); ar->wmi.drop = true; wake_up(&ar->wmi.tx_credits_wq); + + complete(&ar->target_suspend); + complete(&ar->debug.event_stats_compl); + complete(&ar->htt.target_version_received); + complete(&ar->install_key_done); + complete(&ar->offchan_tx_completed); + complete(&ar->scan.started); + complete(&ar->scan.on_channel); + complete(&ar->vdev_setup_done); + complete(&ar->wmi.service_ready); + complete(&ar->wmi.unified_ready); + complete_all(&ar->scan.completed); spin_unlock_bh(&ar->data_lock); queue_work(ar->workqueue, &ar->restart_work); -- 1.8.5.3 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html