2022-07-29 02:30:32

by Ryder Lee

[permalink] [raw]
Subject: [PATCH] wifi: mac80211: read ethtool's sta_stats from sinfo

Driver may update sinfo directly through .sta_statistics, so this
patch makes sure that ethool gets the correct statistics.

Signed-off-by: Ryder Lee <[email protected]>
---
net/mac80211/ethtool.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/net/mac80211/ethtool.c b/net/mac80211/ethtool.c
index 31cd3c1ac07f..26d7a967f10a 100644
--- a/net/mac80211/ethtool.c
+++ b/net/mac80211/ethtool.c
@@ -83,17 +83,17 @@ static void ieee80211_get_stats(struct net_device *dev,

#define ADD_STA_STATS(sta) \
do { \
- data[i++] += sta->rx_stats.packets; \
- data[i++] += sta->rx_stats.bytes; \
+ data[i++] += sinfo.rx_packets; \
+ data[i++] += sinfo.rx_bytes; \
data[i++] += sta->rx_stats.num_duplicates; \
data[i++] += sta->rx_stats.fragments; \
- data[i++] += sta->rx_stats.dropped; \
+ data[i++] += sinfo.rx_dropped_misc; \
\
data[i++] += sinfo.tx_packets; \
data[i++] += sinfo.tx_bytes; \
data[i++] += sta->status_stats.filtered; \
- data[i++] += sta->status_stats.retry_failed; \
- data[i++] += sta->status_stats.retry_count; \
+ data[i++] += sinfo.tx_failed; \
+ data[i++] += sinfo.tx_retries; \
} while (0)

/* For Managed stations, find the single station based on BSSID
--
2.36.1


2022-08-25 08:54:04

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] wifi: mac80211: read ethtool's sta_stats from sinfo

On Fri, 2022-07-29 at 10:15 +0800, Ryder Lee wrote:
> Driver may update sinfo directly through .sta_statistics, so this
> patch makes sure that ethool gets the correct statistics.
>

This doesn't apply, please rebase on wireless-next.

johannes