| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- From: Felix Fietkau <[email protected]>
- Date: Sat, 23 Jan 2021 00:10:34 +0100
- Subject: [PATCH] mac80211: minstrel_ht: show sampling rates in debugfs
- This makes it easier to see what rates are going to be tested next
- Signed-off-by: Felix Fietkau <[email protected]>
- ---
- --- a/net/mac80211/rc80211_minstrel_ht_debugfs.c
- +++ b/net/mac80211/rc80211_minstrel_ht_debugfs.c
- @@ -32,6 +32,18 @@ minstrel_stats_release(struct inode *ino
- return 0;
- }
-
- +static bool
- +minstrel_ht_is_sample_rate(struct minstrel_ht_sta *mi, int idx)
- +{
- + int type, i;
- +
- + for (type = 0; type < ARRAY_SIZE(mi->sample); type++)
- + for (i = 0; i < MINSTREL_SAMPLE_RATES; i++)
- + if (mi->sample[type].cur_sample_rates[i] == idx)
- + return true;
- + return false;
- +}
- +
- static char *
- minstrel_ht_stats_dump(struct minstrel_ht_sta *mi, int i, char *p)
- {
- @@ -84,6 +96,7 @@ minstrel_ht_stats_dump(struct minstrel_h
- *(p++) = (idx == mi->max_tp_rate[2]) ? 'C' : ' ';
- *(p++) = (idx == mi->max_tp_rate[3]) ? 'D' : ' ';
- *(p++) = (idx == mi->max_prob_rate) ? 'P' : ' ';
- + *(p++) = minstrel_ht_is_sample_rate(mi, idx) ? 'S' : ' ';
-
- if (gflags & IEEE80211_TX_RC_MCS) {
- p += sprintf(p, " MCS%-2u", (mg->streams - 1) * 8 + j);
- @@ -145,9 +158,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)] [retry|suc|att] [#success | #attempts]\n");
- + "mode guard # rate [name idx airtime max_tp] [avg(tp) avg(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++)
- @@ -228,6 +241,7 @@ minstrel_ht_stats_csv_dump(struct minstr
- p += sprintf(p, "%s" ,((idx == mi->max_tp_rate[2]) ? "C" : ""));
- p += sprintf(p, "%s" ,((idx == mi->max_tp_rate[3]) ? "D" : ""));
- p += sprintf(p, "%s" ,((idx == mi->max_prob_rate) ? "P" : ""));
- + p += sprintf(p, "%s", (minstrel_ht_is_sample_rate(mi, idx) ? "S" : ""));
-
- if (gflags & IEEE80211_TX_RC_MCS) {
- p += sprintf(p, ",MCS%-2u,", (mg->streams - 1) * 8 + j);
|