|
@@ -2128,7 +2128,7 @@ static int __set_regdom(const struct ieee80211_regdomain *rd)
|
|
* checking if the alpha2 changes if CRDA was already called
|
|
* checking if the alpha2 changes if CRDA was already called
|
|
*/
|
|
*/
|
|
if (!regdom_changes(rd->alpha2))
|
|
if (!regdom_changes(rd->alpha2))
|
|
- return -EINVAL;
|
|
|
|
|
|
+ return -EALREADY;
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -2248,6 +2248,9 @@ int set_regdom(const struct ieee80211_regdomain *rd)
|
|
/* Note that this doesn't update the wiphys, this is done below */
|
|
/* Note that this doesn't update the wiphys, this is done below */
|
|
r = __set_regdom(rd);
|
|
r = __set_regdom(rd);
|
|
if (r) {
|
|
if (r) {
|
|
|
|
+ if (r == -EALREADY)
|
|
|
|
+ reg_set_request_processed();
|
|
|
|
+
|
|
kfree(rd);
|
|
kfree(rd);
|
|
mutex_unlock(®_mutex);
|
|
mutex_unlock(®_mutex);
|
|
return r;
|
|
return r;
|