diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2008-03-05 14:39:31 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-03-07 16:02:59 -0500 |
commit | e5f98f2df903af627a9b9ac55b9352fd54fc431a (patch) | |
tree | a63eeaf5c0312b870b359005b61207b0e147ed03 /net/mac80211/ieee80211_sta.c | |
parent | bb0c9dc27e8fa360e108e6e96860da620a7c5d04 (diff) |
mac80211: don't call conf_tx under RCU lock
Reinette pointed out that with the sta_info RCU-ification
the behaviour here changed and the conf_tx callback is
now invoked under RCU read lock. That is not necessary so
this patch restores the original behaviour
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Tested-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_sta.c')
-rw-r--r-- | net/mac80211/ieee80211_sta.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c index bece28b3eba5..8b991ebcbb4e 100644 --- a/net/mac80211/ieee80211_sta.c +++ b/net/mac80211/ieee80211_sta.c | |||
@@ -1930,16 +1930,16 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, | |||
1930 | 1930 | ||
1931 | if (elems.wmm_param && (ifsta->flags & IEEE80211_STA_WMM_ENABLED)) { | 1931 | if (elems.wmm_param && (ifsta->flags & IEEE80211_STA_WMM_ENABLED)) { |
1932 | sta->flags |= WLAN_STA_WME; | 1932 | sta->flags |= WLAN_STA_WME; |
1933 | rcu_read_unlock(); | ||
1933 | ieee80211_sta_wmm_params(dev, ifsta, elems.wmm_param, | 1934 | ieee80211_sta_wmm_params(dev, ifsta, elems.wmm_param, |
1934 | elems.wmm_param_len); | 1935 | elems.wmm_param_len); |
1935 | } | 1936 | } else |
1937 | rcu_read_unlock(); | ||
1936 | 1938 | ||
1937 | /* set AID, ieee80211_set_associated() will tell the driver */ | 1939 | /* set AID, ieee80211_set_associated() will tell the driver */ |
1938 | bss_conf->aid = aid; | 1940 | bss_conf->aid = aid; |
1939 | ieee80211_set_associated(dev, ifsta, 1); | 1941 | ieee80211_set_associated(dev, ifsta, 1); |
1940 | 1942 | ||
1941 | rcu_read_unlock(); | ||
1942 | |||
1943 | ieee80211_associated(dev, ifsta); | 1943 | ieee80211_associated(dev, ifsta); |
1944 | } | 1944 | } |
1945 | 1945 | ||