diff options
author | Vasanthakumar Thiagarajan <vasanth@atheros.com> | 2008-11-20 01:21:18 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-11-26 09:47:40 -0500 |
commit | 7ac47010a444d9f4285cf1ae06780633a112489b (patch) | |
tree | 1c2e739ceb5ef702efbd02551767d43f7da369ee /drivers/net/wireless/ath9k/xmit.c | |
parent | 40fc95d57caf258e20282f6526b695426d65a73a (diff) |
ath9k: Dont update rate control for every AMPDU
Update the rate control only with the tx status of first
AMPDU of an aggregation. This patch fixes frequent drops
in throughput.
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath9k/xmit.c')
-rw-r--r-- | drivers/net/wireless/ath9k/xmit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath9k/xmit.c b/drivers/net/wireless/ath9k/xmit.c index 50d4105ee4b3..dad81a9df152 100644 --- a/drivers/net/wireless/ath9k/xmit.c +++ b/drivers/net/wireless/ath9k/xmit.c | |||
@@ -950,6 +950,7 @@ static void ath_tx_rc_status(struct ath_buf *bf, struct ath_desc *ds, int nbad) | |||
950 | struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb); | 950 | struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb); |
951 | struct ath_tx_info_priv *tx_info_priv = ATH_TX_INFO_PRIV(tx_info); | 951 | struct ath_tx_info_priv *tx_info_priv = ATH_TX_INFO_PRIV(tx_info); |
952 | 952 | ||
953 | tx_info_priv->update_rc = false; | ||
953 | if (ds->ds_txstat.ts_status & ATH9K_TXERR_FILT) | 954 | if (ds->ds_txstat.ts_status & ATH9K_TXERR_FILT) |
954 | tx_info->flags |= IEEE80211_TX_STAT_TX_FILTERED; | 955 | tx_info->flags |= IEEE80211_TX_STAT_TX_FILTERED; |
955 | 956 | ||
@@ -960,6 +961,7 @@ static void ath_tx_rc_status(struct ath_buf *bf, struct ath_desc *ds, int nbad) | |||
960 | sizeof(tx_info_priv->tx)); | 961 | sizeof(tx_info_priv->tx)); |
961 | tx_info_priv->n_frames = bf->bf_nframes; | 962 | tx_info_priv->n_frames = bf->bf_nframes; |
962 | tx_info_priv->n_bad_frames = nbad; | 963 | tx_info_priv->n_bad_frames = nbad; |
964 | tx_info_priv->update_rc = true; | ||
963 | } | 965 | } |
964 | } | 966 | } |
965 | } | 967 | } |