Permalink
Browse files

wireless: Protect regdomain change by mutex

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Signed-off-by: stratosk <stratosk@albert.(none)>
  • Loading branch information...
1 parent 977323b commit c6c3a7f44716151423cc437fd0bc210176b042c4 Dmitry Shmidt committed with stratosk Dec 19, 2011
Showing with 4 additions and 1 deletion.
  1. +4 −1 net/wireless/reg.c
View
@@ -1759,6 +1759,7 @@ static void restore_alpha2(char *alpha2, bool reset_user)
static void restore_regulatory_settings(bool reset_user)
{
char alpha2[2];
+ char world_alpha2[2];
struct reg_beacon *reg_beacon, *btmp;
struct regulatory_request *reg_request, *tmp;
LIST_HEAD(tmp_reg_req_list);
@@ -1809,11 +1810,13 @@ static void restore_regulatory_settings(bool reset_user)
/* First restore to the basic regulatory settings */
cfg80211_regdomain = cfg80211_world_regdom;
+ world_alpha2[0] = cfg80211_regdomain->alpha2[0];
+ world_alpha2[1] = cfg80211_regdomain->alpha2[1];
mutex_unlock(&reg_mutex);
mutex_unlock(&cfg80211_mutex);
- regulatory_hint_core(cfg80211_regdomain->alpha2);
+ regulatory_hint_core(world_alpha2);
/*
* This restores the ieee80211_regdom module parameter

0 comments on commit c6c3a7f

Please sign in to comment.