aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch')
-rw-r--r--package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch192
1 files changed, 0 insertions, 192 deletions
diff --git a/package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch b/package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch
deleted file mode 100644
index f25b0a8a8c..0000000000
--- a/package/kernel/mac80211/patches/338-mac80211-minstrel-remove-cur_prob-from-debugfs.patch
+++ /dev/null
@@ -1,192 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Wed, 14 Dec 2016 20:13:58 +0100
-Subject: [PATCH] mac80211: minstrel: remove cur_prob from debugfs
-
-This field is redundant, because it is simply last success divided by
-last attempt count. Removing it from the rate stats struct saves about
-1.2 KiB per HT station.
-
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/net/mac80211/rc80211_minstrel.c
-+++ b/net/mac80211/rc80211_minstrel.c
-@@ -159,21 +159,23 @@ minstrel_update_rates(struct minstrel_pr
- void
- minstrel_calc_rate_stats(struct minstrel_rate_stats *mrs)
- {
-+ unsigned int cur_prob;
-+
- if (unlikely(mrs->attempts > 0)) {
- mrs->sample_skipped = 0;
-- mrs->cur_prob = MINSTREL_FRAC(mrs->success, mrs->attempts);
-+ cur_prob = MINSTREL_FRAC(mrs->success, mrs->attempts);
- if (unlikely(!mrs->att_hist)) {
-- mrs->prob_ewma = mrs->cur_prob;
-+ mrs->prob_ewma = cur_prob;
- } else {
- /* update exponential weighted moving variance */
- mrs->prob_ewmsd = minstrel_ewmsd(mrs->prob_ewmsd,
-- mrs->cur_prob,
-+ cur_prob,
- mrs->prob_ewma,
- EWMA_LEVEL);
-
- /*update exponential weighted moving avarage */
- mrs->prob_ewma = minstrel_ewma(mrs->prob_ewma,
-- mrs->cur_prob,
-+ cur_prob,
- EWMA_LEVEL);
- }
- mrs->att_hist += mrs->attempts;
---- a/net/mac80211/rc80211_minstrel.h
-+++ b/net/mac80211/rc80211_minstrel.h
-@@ -62,10 +62,8 @@ struct minstrel_rate_stats {
- u32 att_hist, succ_hist;
-
- /* statistis of packet delivery probability
-- * cur_prob - current prob within last update intervall
- * prob_ewma - exponential weighted moving average of prob
- * prob_ewmsd - exp. weighted moving standard deviation of prob */
-- unsigned int cur_prob;
- unsigned int prob_ewma;
- u16 prob_ewmsd;
-
---- a/net/mac80211/rc80211_minstrel_debugfs.c
-+++ b/net/mac80211/rc80211_minstrel_debugfs.c
-@@ -75,7 +75,7 @@ minstrel_stats_open(struct inode *inode,
- {
- struct minstrel_sta_info *mi = inode->i_private;
- struct minstrel_debugfs_info *ms;
-- unsigned int i, tp_max, tp_avg, prob, eprob;
-+ unsigned int i, tp_max, tp_avg, eprob;
- char *p;
-
- ms = kmalloc(2048, GFP_KERNEL);
-@@ -86,9 +86,9 @@ minstrel_stats_open(struct inode *inode,
- p = ms->buf;
- p += sprintf(p, "\n");
- p += sprintf(p,
-- "best __________rate_________ ________statistics________ ________last_______ ______sum-of________\n");
-+ "best __________rate_________ ________statistics________ ____last_____ ______sum-of________\n");
- p += sprintf(p,
-- "rate [name idx airtime max_tp] [avg(tp) avg(prob) sd(prob)] [prob.|retry|suc|att] [#success | #attempts]\n");
-+ "rate [name idx airtime max_tp] [avg(tp) avg(prob) sd(prob)] [retry|suc|att] [#success | #attempts]\n");
-
- for (i = 0; i < mi->n_rates; i++) {
- struct minstrel_rate *mr = &mi->r[i];
-@@ -107,17 +107,15 @@ minstrel_stats_open(struct inode *inode,
-
- tp_max = minstrel_get_tp_avg(mr, MINSTREL_FRAC(100,100));
- tp_avg = minstrel_get_tp_avg(mr, mrs->prob_ewma);
-- prob = MINSTREL_TRUNC(mrs->cur_prob * 1000);
- eprob = MINSTREL_TRUNC(mrs->prob_ewma * 1000);
-
- p += sprintf(p, "%4u.%1u %4u.%1u %3u.%1u %3u.%1u"
-- " %3u.%1u %3u %3u %-3u "
-+ " %3u %3u %-3u "
- "%9llu %-9llu\n",
- tp_max / 10, tp_max % 10,
- tp_avg / 10, tp_avg % 10,
- eprob / 10, eprob % 10,
- mrs->prob_ewmsd / 10, mrs->prob_ewmsd % 10,
-- prob / 10, prob % 10,
- mrs->retry_count,
- mrs->last_success,
- mrs->last_attempts,
-@@ -148,7 +146,7 @@ minstrel_stats_csv_open(struct inode *in
- {
- struct minstrel_sta_info *mi = inode->i_private;
- struct minstrel_debugfs_info *ms;
-- unsigned int i, tp_max, tp_avg, prob, eprob;
-+ unsigned int i, tp_max, tp_avg, eprob;
- char *p;
-
- ms = kmalloc(2048, GFP_KERNEL);
-@@ -175,16 +173,14 @@ minstrel_stats_csv_open(struct inode *in
-
- tp_max = minstrel_get_tp_avg(mr, MINSTREL_FRAC(100,100));
- tp_avg = minstrel_get_tp_avg(mr, mrs->prob_ewma);
-- prob = MINSTREL_TRUNC(mrs->cur_prob * 1000);
- eprob = MINSTREL_TRUNC(mrs->prob_ewma * 1000);
-
-- p += sprintf(p, "%u.%u,%u.%u,%u.%u,%u.%u,%u.%u,%u,%u,%u,"
-+ p += sprintf(p, "%u.%u,%u.%u,%u.%u,%u.%u,%u,%u,%u,"
- "%llu,%llu,%d,%d\n",
- tp_max / 10, tp_max % 10,
- tp_avg / 10, tp_avg % 10,
- eprob / 10, eprob % 10,
- mrs->prob_ewmsd / 10, mrs->prob_ewmsd % 10,
-- prob / 10, prob % 10,
- mrs->retry_count,
- mrs->last_success,
- mrs->last_attempts,
---- a/net/mac80211/rc80211_minstrel_ht_debugfs.c
-+++ b/net/mac80211/rc80211_minstrel_ht_debugfs.c
-@@ -19,7 +19,7 @@ static char *
- minstrel_ht_stats_dump(struct minstrel_ht_sta *mi, int i, char *p)
- {
- const struct mcs_group *mg;
-- unsigned int j, tp_max, tp_avg, prob, eprob, tx_time;
-+ unsigned int j, tp_max, tp_avg, eprob, tx_time;
- char htmode = '2';
- char gimode = 'L';
- u32 gflags;
-@@ -83,17 +83,15 @@ minstrel_ht_stats_dump(struct minstrel_h
-
- tp_max = minstrel_ht_get_tp_avg(mi, i, j, MINSTREL_FRAC(100, 100));
- tp_avg = minstrel_ht_get_tp_avg(mi, i, j, mrs->prob_ewma);
-- prob = MINSTREL_TRUNC(mrs->cur_prob * 1000);
- eprob = MINSTREL_TRUNC(mrs->prob_ewma * 1000);
-
- p += sprintf(p, "%4u.%1u %4u.%1u %3u.%1u %3u.%1u"
-- " %3u.%1u %3u %3u %-3u "
-+ " %3u %3u %-3u "
- "%9llu %-9llu\n",
- tp_max / 10, tp_max % 10,
- tp_avg / 10, tp_avg % 10,
- eprob / 10, eprob % 10,
- mrs->prob_ewmsd / 10, mrs->prob_ewmsd % 10,
-- prob / 10, prob % 10,
- mrs->retry_count,
- mrs->last_success,
- mrs->last_attempts,
-@@ -130,9 +128,9 @@ minstrel_ht_stats_open(struct inode *ino
-
- p += sprintf(p, "\n");
- p += sprintf(p,
-- " best ____________rate__________ ________statistics________ ________last_______ ______sum-of________\n");
-+ " best ____________rate__________ ________statistics________ _____last____ ______sum-of________\n");
- p += sprintf(p,
-- "mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob) sd(prob)] [prob.|retry|suc|att] [#success | #attempts]\n");
-+ "mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob) sd(prob)] [retry|suc|att] [#success | #attempts]\n");
-
- p = minstrel_ht_stats_dump(mi, MINSTREL_CCK_GROUP, p);
- for (i = 0; i < MINSTREL_CCK_GROUP; i++)
-@@ -165,7 +163,7 @@ static char *
- minstrel_ht_stats_csv_dump(struct minstrel_ht_sta *mi, int i, char *p)
- {
- const struct mcs_group *mg;
-- unsigned int j, tp_max, tp_avg, prob, eprob, tx_time;
-+ unsigned int j, tp_max, tp_avg, eprob, tx_time;
- char htmode = '2';
- char gimode = 'L';
- u32 gflags;
-@@ -226,16 +224,14 @@ minstrel_ht_stats_csv_dump(struct minstr
-
- tp_max = minstrel_ht_get_tp_avg(mi, i, j, MINSTREL_FRAC(100, 100));
- tp_avg = minstrel_ht_get_tp_avg(mi, i, j, mrs->prob_ewma);
-- prob = MINSTREL_TRUNC(mrs->cur_prob * 1000);
- eprob = MINSTREL_TRUNC(mrs->prob_ewma * 1000);
-
-- p += sprintf(p, "%u.%u,%u.%u,%u.%u,%u.%u,%u.%u,%u,%u,"
-+ p += sprintf(p, "%u.%u,%u.%u,%u.%u,%u.%u,%u,%u,"
- "%u,%llu,%llu,",
- tp_max / 10, tp_max % 10,
- tp_avg / 10, tp_avg % 10,
- eprob / 10, eprob % 10,
- mrs->prob_ewmsd / 10, mrs->prob_ewmsd % 10,
-- prob / 10, prob % 10,
- mrs->retry_count,
- mrs->last_success,
- mrs->last_attempts,