linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH/RFC] mac80211: wake queues if ieee80211_suspend failed
@ 2012-04-23 14:57 Vitaly Wool
  2012-04-23 15:30 ` Eliad Peller
  0 siblings, 1 reply; 4+ messages in thread
From: Vitaly Wool @ 2012-04-23 14:57 UTC (permalink / raw)
  To: linux-wireless

Hi,

Sometimes I'm seeing that after a rejected suspend which was
rejected by the driver's suspend routine, the device can not
associate to any AP any more. Investigation shows that it's
due to the fact that the queues are left stopped with the
reason IEEE80211_QUEUE_STOP_REASON_SUSPEND.

With that known, it looks like we need to wake queues on an
unsuccessful suspend attempt explicitly.

---
  net/mac80211/pm.c           |    2 ++
  1 file changed, 2 insertions(+), 0 deletions(-)

diff --git a/net/mac80211/pm.c b/net/mac80211/pm.c
index 844cefb..fd57913 100644
--- a/net/mac80211/pm.c
+++ b/net/mac80211/pm.c
@@ -96,6 +96,8 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
  		int err = drv_suspend(local, wowlan);
  		if (err) {
  			local->quiescing = false;
+			ieee80211_wake_queues_by_reason(hw,
+					IEEE80211_QUEUE_STOP_REASON_SUSPEND);
  			return err;
  		}
  		list_for_each_entry(sdata,&local->interfaces, list) {
-- 
1.7.5.4

-- 
Vitaly Wool<vitalywool@gmail.com>


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-05-03 19:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-23 14:57 [PATCH/RFC] mac80211: wake queues if ieee80211_suspend failed Vitaly Wool
2012-04-23 15:30 ` Eliad Peller
2012-05-02 19:29   ` Vitaly Wool
2012-05-03 19:34     ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).