svn commit: r208120 - head/sys/dev/bwn

Rui Paulo rpaulo at FreeBSD.org
Sat May 15 23:02:55 UTC 2010


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




More information about the svn-src-head mailing list