Index: sys/net80211/ieee80211_node.c =================================================================== --- sys/net80211/ieee80211_node.c (revision 211524) +++ sys/net80211/ieee80211_node.c (working copy) @@ -817,8 +817,7 @@ ieee80211_sta_join(struct ieee80211vap *vap, struc if (ieee80211_iserp_rateset(&ni->ni_rates)) ni->ni_flags |= IEEE80211_NODE_ERP; ieee80211_node_setuptxparms(ni); - if (vap->iv_caps & IEEE80211_C_RATECTL) - ieee80211_ratectl_node_init(ni); + ieee80211_ratectl_node_init(ni); return ieee80211_sta_join1(ieee80211_ref_node(ni)); } Index: sys/net80211/ieee80211_sta.c =================================================================== --- sys/net80211/ieee80211_sta.c (revision 211524) +++ sys/net80211/ieee80211_sta.c (working copy) @@ -1597,8 +1597,7 @@ sta_recv_mgmt(struct ieee80211_node *ni, struct mb IEEE80211_F_JOIN | IEEE80211_F_DOBRS); ieee80211_setup_basic_htrates(ni, htinfo); ieee80211_node_setuptxparms(ni); - if (vap->iv_caps & IEEE80211_C_RATECTL) - ieee80211_ratectl_node_init(ni); + ieee80211_ratectl_node_init(ni); } else { #ifdef IEEE80211_SUPPORT_SUPERG if (IEEE80211_ATH_CAP(vap, ni, IEEE80211_NODE_ATH)) Index: sys/net80211/ieee80211_ratectl.h =================================================================== --- sys/net80211/ieee80211_ratectl.h (revision 211524) +++ sys/net80211/ieee80211_ratectl.h (working copy) @@ -77,7 +77,8 @@ ieee80211_ratectl_node_init(struct ieee80211_node { const struct ieee80211vap *vap = ni->ni_vap; - vap->iv_rate->ir_node_init(ni); + if (vap->iv_caps & IEEE80211_C_RATECTL) + vap->iv_rate->ir_node_init(ni); } static void __inline