Skip to content

Commit 220bf00

Browse files
egrumbachjmberg-intel
authored andcommitted
wifi: mac80211: wake the queues in case of failure in resume
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@intel.com> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219447 Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20241119173108.cd628f560f97.I76a15fdb92de450e5329940125f3c58916be3942@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
1 parent b5c32ff commit 220bf00

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

net/mac80211/util.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1843,6 +1843,9 @@ int ieee80211_reconfig(struct ieee80211_local *local)
18431843
WARN(1, "Hardware became unavailable upon resume. This could be a software issue prior to suspend or a hardware issue.\n");
18441844
else
18451845
WARN(1, "Hardware became unavailable during restart.\n");
1846+
ieee80211_wake_queues_by_reason(hw, IEEE80211_MAX_QUEUE_MAP,
1847+
IEEE80211_QUEUE_STOP_REASON_SUSPEND,
1848+
false);
18461849
ieee80211_handle_reconfig_failure(local);
18471850
return res;
18481851
}

0 commit comments

Comments
 (0)