Patch "wifi: mac80211: wake the queues in case of failure in resume" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    wifi: mac80211: wake the queues in case of failure in resume

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     wifi-mac80211-wake-the-queues-in-case-of-failure-in-.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 2526df32a93041c10bbbbcb53ac6a1db8b52dfcc
Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
Date:   Tue Nov 19 17:35:39 2024 +0200

    wifi: mac80211: wake the queues in case of failure in resume
    
    [ Upstream commit 220bf000530f9b1114fa2a1022a871c7ce8a0b38 ]
    
    In case we fail to resume, we'll WARN with
    "Hardware became unavailable during restart." and we'll wait until user
    space does something. It'll typically bring the interface down and up to
    recover. This won't work though because the queues are still stopped on
    IEEE80211_QUEUE_STOP_REASON_SUSPEND reason.
    Make sure we clear that reason so that we give a chance to the recovery
    to succeed.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
    Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219447
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@xxxxxxxxx>
    Link: https://patch.msgid.link/20241119173108.cd628f560f97.I76a15fdb92de450e5329940125f3c58916be3942@changeid
    Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index e49355cbb1ce..0da845d9d486 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -2351,6 +2351,9 @@ int ieee80211_reconfig(struct ieee80211_local *local)
 			WARN(1, "Hardware became unavailable upon resume. This could be a software issue prior to suspend or a hardware issue.\n");
 		else
 			WARN(1, "Hardware became unavailable during restart.\n");
+		ieee80211_wake_queues_by_reason(hw, IEEE80211_MAX_QUEUE_MAP,
+						IEEE80211_QUEUE_STOP_REASON_SUSPEND,
+						false);
 		ieee80211_handle_reconfig_failure(local);
 		return res;
 	}




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux