From 85cd1fee44641f71d7e52b36a35b0fe3d12a1401 Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Mon, 8 Sep 2008 11:05:08 +0200 Subject: [PATCH] --- yaml --- r: 111617 b: refs/heads/master c: 69e6c010fd5f5015d3cc64718fbe266face93770 h: refs/heads/master i: 111615: 7c626130ac08c0222b2c0af39ca286ae3c25865c v: v3 --- [refs] | 2 +- trunk/net/mac80211/mlme.c | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index fc8d8276b64e..1eb207af66b2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 940b7a3a6c257391bda0950448591dd79efebf59 +refs/heads/master: 69e6c010fd5f5015d3cc64718fbe266face93770 diff --git a/trunk/net/mac80211/mlme.c b/trunk/net/mac80211/mlme.c index df12e746b03e..0abd5a4fe38d 100644 --- a/trunk/net/mac80211/mlme.c +++ b/trunk/net/mac80211/mlme.c @@ -2612,13 +2612,12 @@ static void ieee80211_rx_bss_info(struct ieee80211_sub_if_data *sdata, mesh_peer_accepts_plinks(elems)); } - rcu_read_lock(); - if (sdata->vif.type == IEEE80211_IF_TYPE_IBSS && elems->supp_rates && memcmp(mgmt->bssid, sdata->u.sta.bssid, ETH_ALEN) == 0) { - supp_rates = ieee80211_sta_get_rates(local, elems, band); + rcu_read_lock(); + sta = sta_info_get(local, mgmt->sa); if (sta) { u64 prev_rates; @@ -2642,9 +2641,9 @@ static void ieee80211_rx_bss_info(struct ieee80211_sub_if_data *sdata, ieee80211_ibss_add_sta(sdata, NULL, mgmt->bssid, mgmt->sa, supp_rates); } - } - rcu_read_unlock(); + rcu_read_unlock(); + } if (elems->ds_params && elems->ds_params_len == 1) freq = ieee80211_channel_to_frequency(elems->ds_params[0]);