mac80211: extend minstrel's rate sampling to avoid unsampled rates
authorThomas Huehn <thomas@net.t-labs.tu-berlin.de>
Mon, 4 Mar 2013 22:30:04 +0000 (23:30 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 6 Mar 2013 15:36:08 +0000 (16:36 +0100)
commit1e9c27df7b4a59f2269b9c88a5cef1e9018e77f6
treeefa47598f0e279d0291f74322d06ef8c73d00b7e
parent8f15761197c73e1968777e4b4d968ab0fba2cb74
mac80211: extend minstrel's rate sampling to avoid unsampled rates

Minstrel's decision which rate should be directly sampled within the
1st mrr stage is limited to such rates faster than the current max
throughput rate. All rates below the current max. throughput rate
are indirectly sampled via the 2nd mrr stage.
This approach leads to deprecated per rate statistics and therfore
a deprecated mrr chain setup.

This patch uses the sampling approach from minstrel_ht. A counter is
added to sum all indirect sample attempts per rate. After 20 indirect
sampling attempts the rate is directly sampled within the 1st mrr stage.
Therefore more up-to-date statistics for all rates are maintained and
used to setup the mrr chain.

Acked-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Thomas Huehn <thomas@net.t-labs.tu-berlin.de>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/rc80211_minstrel.c
net/mac80211/rc80211_minstrel.h