On 15 May 2010, at 17:18, Weongyo Jeong wrote: > Author: weongyo > Date: Sat May 15 21:18:15 2010 > New Revision: 208120 > URL: http://svn.freebsd.org/changeset/base/208120 > > Log: > - fixes a bug that it didn't initialize the ratectl after association; > so ni_txrate returned 0 which is a invalid result. > - The fourth argument of ieee80211_ratectl_tx_complete() could be not > NULL. >
Thanks! > Reported by: Gustau P?rez <gperez at entel.upc.edu> > Tested by: Gustau P?rez <gperez at entel.upc.edu>, > Ian FREISLICH <ianf at clue.co.za> > MFC after: 3 days > > Modified: > head/sys/dev/bwn/if_bwn.c > > Modified: head/sys/dev/bwn/if_bwn.c > ============================================================================== > --- head/sys/dev/bwn/if_bwn.c Sat May 15 20:26:10 2010 (r208119) > +++ head/sys/dev/bwn/if_bwn.c Sat May 15 21:18:15 2010 (r208120) > @@ -8329,6 +8329,7 @@ bwn_phy_reset(struct bwn_mac *mac) > static int > bwn_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) > { > + const struct ieee80211_txparam *tp; > struct bwn_vap *bvp = BWN_VAP(vap); > struct ieee80211com *ic= vap->iv_ic; > struct ifnet *ifp = ic->ic_ifp; > @@ -8377,6 +8378,11 @@ bwn_newstate(struct ieee80211vap *vap, e > bwn_set_pretbtt(mac); > bwn_spu_setdelay(mac, 0); > bwn_set_macaddr(mac); > + > + /* Initializes ratectl for a node. */ > + tp = &vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)]; > + if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) > + ieee80211_ratectl_node_init(vap->iv_bss); > } > > BWN_UNLOCK(sc); > @@ -8994,7 +9000,7 @@ bwn_handle_txeof(struct bwn_mac *mac, co > struct bwn_stats *stats = &mac->mac_stats; > struct ieee80211_node *ni; > struct ieee80211vap *vap; > - int slot; > + int retrycnt = 0, slot; > > BWN_ASSERT_LOCKED(mac->mac_sc); > > @@ -9027,7 +9033,7 @@ bwn_handle_txeof(struct bwn_mac *mac, co > status->ack ? > IEEE80211_RATECTL_TX_SUCCESS : > IEEE80211_RATECTL_TX_FAILURE, > - NULL, 0); > + &retrycnt, 0); > break; > } > slot = bwn_dma_nextslot(dr, slot); > @@ -9048,7 +9054,7 @@ bwn_handle_txeof(struct bwn_mac *mac, co > status->ack ? > IEEE80211_RATECTL_TX_SUCCESS : > IEEE80211_RATECTL_TX_FAILURE, > - NULL, 0); > + &retrycnt, 0); > } > bwn_pio_handle_txeof(mac, status); > } > > ____________________________________________________________________________________ > Use the link below to report this message as spam. > https://lavabit.com/apps/teacher?sig=1097658&key=888213324 > ____________________________________________________________________________________ -- Rui Paulo _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"