summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuis R. Rodriguez <lrodriguez@atheros.com>2010-01-29 19:58:56 -0500
committerJohn W. Linville <linville@tuxdriver.com>2010-02-01 15:40:05 -0500
commita2bff2694b02448e1d5873ac010582bc9898021c (patch)
treefb6b47583e6ef4f301097f5b4501e3b1eb511e06
parentef5127a4d256b9c0f47caae6cdc8ccfceedb09f9 (diff)
downloadlwn-a2bff2694b02448e1d5873ac010582bc9898021c.tar.gz
lwn-a2bff2694b02448e1d5873ac010582bc9898021c.zip
cfg80211: avoid flushing the global workqueue for core reg hints
When cfg80211 starts it will send a core regulatory hint. This is sent to the global workqueue but we force processing of it by flushing the global workqueue. The flushing was done since cfg80211 needs last_request to always be populated. Avoid flushing the global workqueue by processing the work required immediately instead of putting it into a linked list and processing it after the flush. Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/wireless/reg.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 5f8071de7950..5dcda28b6f04 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -1920,14 +1920,12 @@ static int regulatory_hint_core(const char *alpha2)
request->alpha2[1] = alpha2[1];
request->initiator = NL80211_REGDOM_SET_BY_CORE;
- queue_regulatory_request(request);
-
/*
* This ensures last_request is populated once modules
* come swinging in and calling regulatory hints and
* wiphy_apply_custom_regulatory().
*/
- flush_scheduled_work();
+ reg_process_hint(request);
return 0;
}