Browse Source

mac80211: flush workqueue a second time in suspend()

Drivers can theoretically queue more work in one of their callbacks
from mac80211 suspend, so let's flush it once more to be on the safe
side, just before calling ->stop().

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Bob Copeland 16 năm trước cách đây
mục cha
commit
e874e65855
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  1. 3 0
      net/mac80211/pm.c

+ 3 - 0
net/mac80211/pm.c

@@ -44,6 +44,9 @@ int __ieee80211_suspend(struct ieee80211_hw *hw)
 		}
 	}
 
+	/* flush again, in case driver queued work */
+	flush_workqueue(local->hw.workqueue);
+
 	/* stop hardware */
 	if (local->open_count) {
 		ieee80211_led_radio(local, false);