From 96ac2aaea72a4708851af92fbebbd8b94222b171 Mon Sep 17 00:00:00 2001 From: nbd Date: Wed, 20 Oct 2010 21:01:06 +0000 Subject: mac80211: improve minstrel_ht performance by ensuring that rates get sampled fast enough git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23554 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches/560-minstrel_ht_performance.patch | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 package/mac80211/patches/560-minstrel_ht_performance.patch (limited to 'package') diff --git a/package/mac80211/patches/560-minstrel_ht_performance.patch b/package/mac80211/patches/560-minstrel_ht_performance.patch new file mode 100644 index 000000000..43ff78b3a --- /dev/null +++ b/package/mac80211/patches/560-minstrel_ht_performance.patch @@ -0,0 +1,31 @@ +--- a/net/mac80211/rc80211_minstrel_ht.h ++++ b/net/mac80211/rc80211_minstrel_ht.h +@@ -103,6 +103,7 @@ struct minstrel_ht_sta { + u8 sample_tries; + u8 sample_count; + u8 sample_slow; ++ u8 sample_retry; + + /* current MCS group to be sampled */ + u8 sample_group; +--- a/net/mac80211/rc80211_minstrel_ht.c ++++ b/net/mac80211/rc80211_minstrel_ht.c +@@ -261,6 +261,7 @@ minstrel_ht_update_stats(struct minstrel + + /* try to sample up to half of the availble rates during each interval */ + mi->sample_count *= 4; ++ mi->sample_retry = mi->sample_count; + + cur_prob = 0; + cur_prob_tp = 0; +@@ -572,6 +573,10 @@ minstrel_get_sample_rate(struct minstrel + return sample_idx; + + next: ++ if (mi->sample_retry > 0) { ++ mi->sample_retry--; ++ mi->sample_tries++; ++ } + minstrel_next_sample_idx(mi); + return -1; + } -- cgit v1.2.3