mac80211: Fix pid rate-setting algorithm to allow rate changes

In commit 9ea2c74 named "mac80211/drivers: rewrite the rate control API",
the meaning of status.rates[i].count was changed from number of retries
to total number of tries. As a result, the pid rate-setting algorithm fails
because every packet appears to have needed a retransmit.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Larry Finger 2008-11-16 17:09:25 -06:00 committed by John W. Linville
parent d507748ac6
commit 1dc5a84166

View File

@ -256,7 +256,7 @@ static void rate_control_pid_tx_status(void *priv, struct ieee80211_supported_ba
if (!(info->flags & IEEE80211_TX_STAT_ACK)) { if (!(info->flags & IEEE80211_TX_STAT_ACK)) {
spinfo->tx_num_failed += 2; spinfo->tx_num_failed += 2;
spinfo->tx_num_xmit++; spinfo->tx_num_xmit++;
} else if (info->status.rates[0].count) { } else if (info->status.rates[0].count > 1) {
spinfo->tx_num_failed++; spinfo->tx_num_failed++;
spinfo->tx_num_xmit++; spinfo->tx_num_xmit++;
} }