]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
wcn36xx: Do not flush indication queue on suspend/resume
authorBryan O'Donoghue <bryan.odonoghue@linaro.org>
Sat, 5 Jun 2021 01:11:32 +0000 (02:11 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 14 Jun 2021 15:18:12 +0000 (18:18 +0300)
Testing on Android reveals that the flush on both suspend and resume of the
firmware indication work-queue can stall indefinitely.

Given this code path doesn't appear to have been exercised up until now,
removing this flush to unblock this situation.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Tested-by: Benjamin Li <benl@squareup.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210605011140.2004643-5-bryan.odonoghue@linaro.org
drivers/net/wireless/ath/wcn36xx/main.c

index 0da123660fa1337c8dc12f83cbac4d2151957a63..9731fcbe2e7f1b90f1196fc8c163b1c888ca6dbc 100644 (file)
@@ -1110,7 +1110,6 @@ static int wcn36xx_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wow)
 
        wcn36xx_dbg(WCN36XX_DBG_MAC, "mac suspend\n");
 
-       flush_workqueue(wcn->hal_ind_wq);
        mutex_lock(&wcn->conf_mutex);
 
        vif = wcn36xx_get_first_assoc_vif(wcn);
@@ -1132,7 +1131,6 @@ static int wcn36xx_resume(struct ieee80211_hw *hw)
 
        wcn36xx_dbg(WCN36XX_DBG_MAC, "mac resume\n");
 
-       flush_workqueue(wcn->hal_ind_wq);
        mutex_lock(&wcn->conf_mutex);
        vif = wcn36xx_get_first_assoc_vif(wcn);
        if (vif) {