diff options
author | David S. Miller <davem@davemloft.net> | 2016-01-28 16:05:45 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-28 16:05:45 -0800 |
commit | bd7c5e31552c06f1186606de8914a135e55f6bac (patch) | |
tree | a3d29b319537297a3023af1949b15cca2cc38824 /net/mac80211/main.c | |
parent | c731f0e3493cc9031a0aceea6a50c70beed23e6d (diff) | |
parent | 6736fde9672ff6717ac576e9bba2fd5f3dfec822 (diff) | |
download | op-kernel-dev-bd7c5e31552c06f1186606de8914a135e55f6bac.zip op-kernel-dev-bd7c5e31552c06f1186606de8914a135e55f6bac.tar.gz |
Merge tag 'mac80211-for-davem-2016-01-26' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211
Johannes Berg says:
====================
Here's a first set of fixes for the 4.5-rc cycle:
* make regulatory messages much less verbose by default
* various remain-on-channel fixes
* scheduled scanning fixes with hardware restart
* a PS-Poll handling fix; was broken just recently
* bugfix to avoid buffering non-bufferable MMPDUs
* world regulatory domain data fix
* a fix for scanning causing other work to get stuck
* hwsim: revert an older problematic patch that caused some
userspace tools to have issues - not that big a deal as
it's a debug only driver though
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index 6bcf0fa..8190bf2 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c @@ -248,6 +248,7 @@ static void ieee80211_restart_work(struct work_struct *work) /* wait for scan work complete */ flush_workqueue(local->workqueue); + flush_work(&local->sched_scan_stopped_work); WARN(test_bit(SCAN_HW_SCANNING, &local->scanning), "%s called with hardware scan in progress\n", __func__); @@ -256,6 +257,11 @@ static void ieee80211_restart_work(struct work_struct *work) list_for_each_entry(sdata, &local->interfaces, list) flush_delayed_work(&sdata->dec_tailroom_needed_wk); ieee80211_scan_cancel(local); + + /* make sure any new ROC will consider local->in_reconfig */ + flush_delayed_work(&local->roc_work); + flush_work(&local->hw_roc_done); + ieee80211_reconfig(local); rtnl_unlock(); } |