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>
This commit is contained in:
Родитель
ef5127a4d2
Коммит
a2bff2694b
|
@ -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;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче