Patch "mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output)" has been added to the 5.17-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output)

to the 5.17-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch
and it can be found in the queue-5.17 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit a26bd024b853e2fa0f2d73cd6779430a8cb1676e
Author: Peter Seiderer <ps.report@xxxxxxx>
Date:   Mon Apr 4 18:54:14 2022 +0200

    mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output)
    
    [ Upstream commit 5c6dd7bd569b54c0d2904125d7366aa93f077f67 ]
    
    Using an ath9k card the debugfs output of minstrel_ht looks like the following
    (note the zero values for the first four rates sum-of success/attempts):
    
                 best    ____________rate__________    ____statistics___    _____last____    ______sum-of________
    mode guard #  rate   [name   idx airtime  max_tp]  [avg(tp) avg(prob)]  [retry|suc|att]  [#success | #attempts]
    OFDM       1    DP     6.0M  272    1640     5.2       3.1      53.8       3     0 0             0   0
    OFDM       1   C       9.0M  273    1104     7.7       4.6      53.8       4     0 0             0   0
    OFDM       1  B       12.0M  274     836    10.0       6.0      53.8       4     0 0             0   0
    OFDM       1 A    S   18.0M  275     568    14.3       8.5      53.8       5     0 0             0   0
    OFDM       1      S   24.0M  276     436    18.1       0.0       0.0       5     0 1            80   1778
    OFDM       1          36.0M  277     300    24.9       0.0       0.0       0     0 1             0   107
    OFDM       1      S   48.0M  278     236    30.4       0.0       0.0       0     0 0             0   75
    OFDM       1          54.0M  279     212    33.0       0.0       0.0       0     0 0             0   72
    
    Total packet count::    ideal 16582      lookaround 885
    Average # of aggregated frames per A-MPDU: 1.0
    
    Debugging showed that the rate statistics for the first four rates where
    stored in the MINSTREL_CCK_GROUP instead of the MINSTREL_OFDM_GROUP because
    in minstrel_ht_get_stats() the supported check was not honoured as done in
    various other places, e.g net/mac80211/rc80211_minstrel_ht_debugfs.c:
    
     74                 if (!(mi->supported[i] & BIT(j)))
     75                         continue;
    
    With the patch applied the output looks good:
    
                  best    ____________rate__________    ____statistics___    _____last____    ______sum-of________
    mode guard #  rate   [name   idx airtime  max_tp]  [avg(tp) avg(prob)]  [retry|suc|att]  [#success | #attempts]
    OFDM       1    D      6.0M  272    1640     5.2       5.2     100.0       3     0 0             1   1
    OFDM       1   C       9.0M  273    1104     7.7       7.7     100.0       4     0 0            38   38
    OFDM       1  B       12.0M  274     836    10.0       9.9      89.5       4     2 2           372   395
    OFDM       1 A   P    18.0M  275     568    14.3      14.3      97.2       5    52 53         6956   7181
    OFDM       1      S   24.0M  276     436    18.1       0.0       0.0       0     0 1             6   163
    OFDM       1          36.0M  277     300    24.9       0.0       0.0       0     0 1             0   35
    OFDM       1      S   48.0M  278     236    30.4       0.0       0.0       0     0 0             0   38
    OFDM       1      S   54.0M  279     212    33.0       0.0       0.0       0     0 0             0   38
    
    Total packet count::    ideal 7097      lookaround 287
    Average # of aggregated frames per A-MPDU: 1.0
    
    Signed-off-by: Peter Seiderer <ps.report@xxxxxxx>
    Link: https://lore.kernel.org/r/20220404165414.1036-1-ps.report@xxxxxxx
    Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c
index 9c3b7fc377c1..50cce990784f 100644
--- a/net/mac80211/rc80211_minstrel_ht.c
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -362,6 +362,9 @@ minstrel_ht_get_stats(struct minstrel_priv *mp, struct minstrel_ht_sta *mi,
 
 	group = MINSTREL_CCK_GROUP;
 	for (idx = 0; idx < ARRAY_SIZE(mp->cck_rates); idx++) {
+		if (!(mi->supported[group] & BIT(idx)))
+			continue;
+
 		if (rate->idx != mp->cck_rates[idx])
 			continue;
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux