summaryrefslogtreecommitdiff
path: root/net/wireless/reg.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-06-24 17:43:38 +0400
committerJohannes Berg <johannes.berg@intel.com>2013-07-16 10:55:55 +0400
commitf77b86d7d3acf9dfcb5ee834628d12207584b2cb (patch)
tree9f1c168aee8a599798fb3f6560da8f44b54416d4 /net/wireless/reg.c
parent923a0e7dee8c436108279568cf34444749ac796f (diff)
downloadlinux-f77b86d7d3acf9dfcb5ee834628d12207584b2cb.tar.xz
regulatory: add missing rtnl locking
restore_regulatory_settings() requires the RTNL to be held, add the missing locking in reg_timeout_work(). Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless/reg.c')
-rw-r--r--net/wireless/reg.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 5a24c986f34b..5a950f36bae4 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -2279,7 +2279,9 @@ void wiphy_regulatory_deregister(struct wiphy *wiphy)
static void reg_timeout_work(struct work_struct *work)
{
REG_DBG_PRINT("Timeout while waiting for CRDA to reply, restoring regulatory settings\n");
+ rtnl_lock();
restore_regulatory_settings(true);
+ rtnl_unlock();
}
int __init regulatory_init(void)