diff options
author | Johannes Berg <johannes.berg@intel.com> | 2016-10-26 07:56:59 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2016-10-26 07:59:52 +0200 |
commit | e1957dba5b54b9c9b1d16f9d5f3f8d41d82bee41 (patch) | |
tree | d059eed01943b33083d6313ec4ad4b2262f5c02c /virt/lib | |
parent | b4f0fd4baa90ecce798e0d26d1cce8f4457f2028 (diff) | |
download | linux-e1957dba5b54b9c9b1d16f9d5f3f8d41d82bee41.tar.gz linux-e1957dba5b54b9c9b1d16f9d5f3f8d41d82bee41.tar.bz2 linux-e1957dba5b54b9c9b1d16f9d5f3f8d41d82bee41.zip |
cfg80211: process events caused by suspend before suspending
When suspending without WoWLAN, cfg80211 will ask drivers to
disconnect. Even when the driver does this synchronously, and
immediately returns with a notification, cfg80211 schedules
the handling thereof to a workqueue, and may then call back
into the driver when the driver was already suspended/ing.
Fix this by processing all events caused by cfg80211_leave_all()
directly after that function returns. The driver still needs to
do the right thing here and wait for the firmware response, but
that is - at least - true for mwifiex where this occurred.
Reported-by: Amitkumar Karwar <akarwar@marvell.com>
Tested-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'virt/lib')
0 files changed, 0 insertions, 0 deletions