summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHelmut Schaa <helmut.schaa@googlemail.com>2012-03-14 13:31:11 +0100
committerJohn W. Linville <linville@tuxdriver.com>2012-03-15 13:40:33 -0400
commitba6fa29c6dd51a1245a109f4b460092b51cad0f0 (patch)
tree732d2a66329074177f3ac6d0d21af7d70eb63c85
parent0d9be8a4b7da71ef3b4ac8f6aa4fa225c1cb8e98 (diff)
mac80211: Don't sample max throughput rate in minstrel_ht
The current max throughput rate is known to be good as otherwise it wouldn't be the max throughput rate. Since rate sampling can introduce some overhead (by adding RTS for example or due to not aggregating the frame) don't sample the max throughput rate. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Acked-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/mac80211/rc80211_minstrel_ht.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c
index 2b42564d6e2..16e0b277b9a 100644
--- a/net/mac80211/rc80211_minstrel_ht.c
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -568,6 +568,13 @@ minstrel_get_sample_rate(struct minstrel_priv *mp, struct minstrel_ht_sta *mi)
minstrel_next_sample_idx(mi);
/*
+ * Sampling might add some overhead (RTS, no aggregation)
+ * to the frame. Hence, don't use sampling for the currently
+ * used max TP rate.
+ */
+ if (sample_idx == mi->max_tp_rate)
+ return -1;
+ /*
* When not using MRR, do not sample if the probability is already
* higher than 95% to avoid wasting airtime
*/