summaryrefslogtreecommitdiffstats
path: root/include/net/regulatory.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-12-06 16:29:25 +0100
committerJohannes Berg <johannes.berg@intel.com>2013-01-03 13:01:30 +0100
commitc492db370c17c428a0a58d3673294d4e99634b7d (patch)
treea350365e3cdb2f37c1249f6871eaeb36a811512b /include/net/regulatory.h
parent458f4f9e960b9a3b674c4b87d996eef186b1fe83 (diff)
downloadlinux-c492db370c17c428a0a58d3673294d4e99634b7d.tar.gz
linux-c492db370c17c428a0a58d3673294d4e99634b7d.tar.bz2
linux-c492db370c17c428a0a58d3673294d4e99634b7d.zip
regulatory: use RCU to protect last_request
This will allow making freq_reg_info() lock-free. Acked-by: Luis R. Rodriguez <mcgrof@do-not-panic.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net/regulatory.h')
-rw-r--r--include/net/regulatory.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/regulatory.h b/include/net/regulatory.h
index 96b0f07cb85b..f17ed590d64a 100644
--- a/include/net/regulatory.h
+++ b/include/net/regulatory.h
@@ -36,6 +36,7 @@ enum environment_cap {
/**
* struct regulatory_request - used to keep track of regulatory requests
*
+ * @rcu_head: RCU head struct used to free the request
* @wiphy_idx: this is set if this request's initiator is
* %REGDOM_SET_BY_COUNTRY_IE or %REGDOM_SET_BY_DRIVER. This
* can be used by the wireless core to deal with conflicts
@@ -73,6 +74,7 @@ enum environment_cap {
* @list: used to insert into the reg_requests_list linked list
*/
struct regulatory_request {
+ struct rcu_head rcu_head;
int wiphy_idx;
enum nl80211_reg_initiator initiator;
enum nl80211_user_reg_hint_type user_reg_hint_type;