aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-12-06 10:29:25 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-01-03 07:01:30 -0500
commitc492db370c17c428a0a58d3673294d4e99634b7d (patch)
treea350365e3cdb2f37c1249f6871eaeb36a811512b /include/net
parent458f4f9e960b9a3b674c4b87d996eef186b1fe83 (diff)
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')
-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 {
36/** 36/**
37 * struct regulatory_request - used to keep track of regulatory requests 37 * struct regulatory_request - used to keep track of regulatory requests
38 * 38 *
39 * @rcu_head: RCU head struct used to free the request
39 * @wiphy_idx: this is set if this request's initiator is 40 * @wiphy_idx: this is set if this request's initiator is
40 * %REGDOM_SET_BY_COUNTRY_IE or %REGDOM_SET_BY_DRIVER. This 41 * %REGDOM_SET_BY_COUNTRY_IE or %REGDOM_SET_BY_DRIVER. This
41 * can be used by the wireless core to deal with conflicts 42 * can be used by the wireless core to deal with conflicts
@@ -73,6 +74,7 @@ enum environment_cap {
73 * @list: used to insert into the reg_requests_list linked list 74 * @list: used to insert into the reg_requests_list linked list
74 */ 75 */
75struct regulatory_request { 76struct regulatory_request {
77 struct rcu_head rcu_head;
76 int wiphy_idx; 78 int wiphy_idx;
77 enum nl80211_reg_initiator initiator; 79 enum nl80211_reg_initiator initiator;
78 enum nl80211_user_reg_hint_type user_reg_hint_type; 80 enum nl80211_user_reg_hint_type user_reg_hint_type;