Skip to content

Commit

Permalink
mac80211: minstrel_ht: update total packets counter in tx status path
Browse files Browse the repository at this point in the history
Keep the update in one place and prepare for further rework

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Link: https://lore.kernel.org/r/20210127055735.78599-2-nbd@nbd.name
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  • Loading branch information
Felix Fietkau authored and Johannes Berg committed Feb 12, 2021
1 parent a42fa25 commit 2012a2f
Showing 1 changed file with 10 additions and 11 deletions.
21 changes: 10 additions & 11 deletions net/mac80211/rc80211_minstrel_ht.c
Original file line number Diff line number Diff line change
Expand Up @@ -1092,6 +1092,16 @@ minstrel_ht_tx_status(void *priv, struct ieee80211_supported_band *sband,
info->status.ampdu_len = 1;
}

/* wraparound */
if (mi->total_packets >= ~0 - info->status.ampdu_len) {
mi->total_packets = 0;
mi->sample_packets = 0;
}

mi->total_packets += info->status.ampdu_len;
if (info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE)
mi->sample_packets += info->status.ampdu_len;

mi->ampdu_packets++;
mi->ampdu_len += info->status.ampdu_len;

Expand All @@ -1103,9 +1113,6 @@ minstrel_ht_tx_status(void *priv, struct ieee80211_supported_band *sband,
mi->sample_count--;
}

if (info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE)
mi->sample_packets += info->status.ampdu_len;

if (mi->sample_mode != MINSTREL_SAMPLE_IDLE)
rate_sample = minstrel_get_ratestats(mi, mi->sample_rate);

Expand Down Expand Up @@ -1503,14 +1510,6 @@ minstrel_ht_get_rate(void *priv, struct ieee80211_sta *sta, void *priv_sta,
else
sample_idx = minstrel_get_sample_rate(mp, mi);

mi->total_packets++;

/* wraparound */
if (mi->total_packets == ~0) {
mi->total_packets = 0;
mi->sample_packets = 0;
}

if (sample_idx < 0)
return;

Expand Down

0 comments on commit 2012a2f

Please sign in to comment.