summaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorLuis R. Rodriguez2008-11-12 23:21:59 +0100
committerJohn W. Linville2008-11-25 22:41:24 +0100
commita01ddafd43f7d53a65ef053eb80a4dee58839c1f (patch)
tree972cc8004dc126d4a7e1039d36a39e098e5e823d /net/wireless
parentcfg80211: separate intersection section in __set_regdom() (diff)
downloadkernel-qcow2-linux-a01ddafd43f7d53a65ef053eb80a4dee58839c1f.tar.gz
kernel-qcow2-linux-a01ddafd43f7d53a65ef053eb80a4dee58839c1f.tar.xz
kernel-qcow2-linux-a01ddafd43f7d53a65ef053eb80a4dee58839c1f.zip
cfg80211: expect different rd in cfg80211 when intersecting
When intersecting it is possible that set_regdom() was called with a regulatory domain which we'll only use as an aid to build a final regulatory domain. Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/reg.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 845e2d326632..f062b8b7000a 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -880,12 +880,13 @@ int set_regdom(const struct ieee80211_regdomain *rd)
}
/* This would make this whole thing pointless */
- BUG_ON(rd != cfg80211_regdomain);
+ if (!last_request->intersect)
+ BUG_ON(rd != cfg80211_regdomain);
/* update all wiphys now with the new established regulatory domain */
update_all_wiphy_regulatory(last_request->initiator);
- print_regdomain(rd);
+ print_regdomain(cfg80211_regdomain);
return r;
}