cfg80211: protect first access of last_request on 11d hint under mutex
[linux-3.10.git] / net / wireless / reg.c
index d44f3b5..b474452 100644 (file)
@@ -1261,11 +1261,13 @@ void regulatory_hint_11d(struct wiphy *wiphy,
        u32 checksum = 0;
        enum environment_cap env = ENVIRON_ANY;
 
-       if (!last_request)
-               return;
-
        mutex_lock(&cfg80211_mutex);
 
+       if (unlikely(!last_request)) {
+               mutex_unlock(&cfg80211_mutex);
+               return;
+       }
+
        /* IE len must be evenly divisible by 2 */
        if (country_ie_len & 0x01)
                goto out;