diff options
Diffstat (limited to 'net/wireless/scan.c')
| -rw-r--r-- | net/wireless/scan.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/net/wireless/scan.c b/net/wireless/scan.c index b2fdac96bab0..6d82bd9eaf8c 100644 --- a/net/wireless/scan.c +++ b/net/wireless/scan.c @@ -1829,7 +1829,7 @@ int cfg80211_get_ies_channel_number(const u8 *ie, size_t ielen,  		if (tmp && tmp->datalen >= sizeof(struct ieee80211_s1g_oper_ie)) {  			struct ieee80211_s1g_oper_ie *s1gop = (void *)tmp->data; -			return s1gop->primary_ch; +			return s1gop->oper_ch;  		}  	} else {  		tmp = cfg80211_find_elem(WLAN_EID_DS_PARAMS, ie, ielen); @@ -2018,11 +2018,13 @@ cfg80211_inform_single_bss_data(struct wiphy *wiphy,  		/* this is a nontransmitting bss, we need to add it to  		 * transmitting bss' list if it is not there  		 */ +		spin_lock_bh(&rdev->bss_lock);  		if (cfg80211_add_nontrans_list(non_tx_data->tx_bss,  					       &res->pub)) {  			if (__cfg80211_unlink_bss(rdev, res))  				rdev->bss_generation++;  		} +		spin_unlock_bh(&rdev->bss_lock);  	}  	trace_cfg80211_return_bss(&res->pub);  | 
