提交 2e54a689 编写于 作者: B Ben 提交者: Johannes Berg

cfg80211: Process all pending regulatory requests/hints

It is possible that there are several regulatory requests
pending, but the processing of the last one does not call
CRDA, and thus the other requests are not handled.

Fix this by rescheduling the work until all requests have
been processed.
Signed-off-by: NBen Rosenfeld <ben.rosenfeld@intel.com>
Signed-off-by: NIlan Peer <ilan.peer@intel.com>
Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
上级 c23e31cf
......@@ -2159,6 +2159,13 @@ static void reg_process_pending_hints(void)
}
reg_process_hint(reg_request);
lr = get_last_request();
spin_lock(&reg_requests_lock);
if (!list_empty(&reg_requests_list) && lr && lr->processed)
schedule_work(&reg_work);
spin_unlock(&reg_requests_lock);
}
/* Processes beacon hints -- this has nothing to do with country IEs */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册