On Thu, 19 Jul 2007 23:20:35 +0800, Li YanBo wrote: > BTW, I find a problem in the file ieee80211.c it locals in the > function "static int __ieee80211_tx()", I think the if (i == > tx->u.tx.num_extra_frag) is ineffective, because 'i' always lower > than tx->u.tx.num_extra_frag. I guess maybe it should be if (i == > (tx->u.tx.num_extra_frag - 1)), below is the patch, CMIIW. You're right. Could you add your Signed-off-by? Thanks, Jiri > > BR > LiYanBo > > diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c > index fcad801..48c51bf 100644 > --- a/net/mac80211/ieee80211.c > +++ b/net/mac80211/ieee80211.c > @@ -1406,7 +1406,7 @@ static int __ieee80211_tx(struct ieee80211_local > *local, struct sk_buff * > continue; > if (__ieee80211_queue_stopped(local, control->queue)) > return IEEE80211_TX_FRAG_AGAIN; > - if (i == tx->u.tx.num_extra_frag) { > + if (i == (tx->u.tx.num_extra_frag - 1)) { > control->tx_rate = tx->u.tx.last_frag_hwrate; > control->rate = tx->u.tx.last_frag_rate; > if (tx->u.tx.probe_last_frag) -- Jiri Benc SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html