summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/300-minstrel_no_mrr.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-10-11 01:33:09 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-10-11 01:33:09 +0000
commit090f16f6fb1019af891be04e2da176f6feb65cc9 (patch)
tree1fafd2be3f6989795ec69425f3dabbade11138b2 /package/mac80211/patches/300-minstrel_no_mrr.patch
parent042b8de61d833ef841b2ccf4d39f673aecaacd3a (diff)
mac80211: add rate control rewrite and enhance the performance of the minstrel algorithm for non-mrr configurations
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12948 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/300-minstrel_no_mrr.patch')
-rw-r--r--package/mac80211/patches/300-minstrel_no_mrr.patch31
1 files changed, 0 insertions, 31 deletions
diff --git a/package/mac80211/patches/300-minstrel_no_mrr.patch b/package/mac80211/patches/300-minstrel_no_mrr.patch
deleted file mode 100644
index d4c04c4d8..000000000
--- a/package/mac80211/patches/300-minstrel_no_mrr.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-This fixes tx status processing for drivers that do not support mrr.
-If the retry count is bigger than the maximum retry count configured in
-the hardware, do not count the rate attempt as successful, the hardware
-has probably switched to a lower rate.
-
-Signed-off-by: Felix Fietkau <nbd@openwrt.org>
-
---- a/net/mac80211/rc80211_minstrel.c
-+++ b/net/mac80211/rc80211_minstrel.c
-@@ -171,6 +171,7 @@ minstrel_tx_status(void *priv, struct ie
- struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
- struct ieee80211_tx_altrate *ar = info->status.retries;
- struct minstrel_priv *mp = priv;
-+ struct ieee80211_local *local = hw_to_local(mp->hw);
- int i, ndx, tries;
- int success = 0;
-
-@@ -180,6 +181,13 @@ minstrel_tx_status(void *priv, struct ie
- if (!mp->has_mrr || (ar[0].rate_idx < 0)) {
- ndx = rix_to_ndx(mi, info->tx_rate_idx);
- tries = info->status.retry_count + 1;
-+
-+ /* If the driver does not support the MRR API, but uses
-+ * a fallback rate, use the long retry limit as indication
-+ * that a rate switch has happened */
-+ if (!mp->has_mrr && (tries >= local->long_retry_limit))
-+ success = 0;
-+
- mi->r[ndx].success += success;
- mi->r[ndx].attempts += tries;
- return;