On Fri, Nov 13, 2009 at 4:51 PM, Felix Fietkau <nbd@xxxxxxxxxxx> wrote: > This patch removes the need for separately allocated private tx info > data in ath9k and brings the driver one small step closer to using the > mac80211 rate control API properly. > > Signed-off-by: Felix Fietkau <nbd@xxxxxxxxxxx> Thanks for doing this! Comments below. > @@ -1301,23 +1298,30 @@ static void ath_tx_status(void *priv, st < ... > > hdr = (struct ieee80211_hdr *)skb->data; > fc = hdr->frame_control; > - tx_info_priv = ATH_TX_INFO_PRIV(tx_info); > - final_ts_idx = tx_info_priv->tx.ts_rateindex; > + for (i = 0; i < IEEE80211_TX_MAX_RATES; i++) { > + struct ieee80211_tx_rate *rate = &tx_info->status.rates[i]; > + if (!rate->count) > + break; > + > + final_ts_idx = i; > + long_retry = rate->count - 1; > + } > This seems to be the only trade off, doing a loop on tx complete but I think I'm willing to trade that for the kmalloc()/kfree() removal. Reviewed-by: Luis R. Rodriguez <lrodriguez@xxxxxxxxxxx> Luis -- 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