From: Johannes Berg <johannes.berg@xxxxxxxxx> If an SKB will be segmented by the driver, count it for multiple MSDUs that are being transmitted rather than just a single. Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> --- net/mac80211/tx.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 9489b5da5a46..53d462c84977 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c @@ -2810,7 +2810,11 @@ static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata, u64_stats_update_begin(&sta->tx_sync); sta->tx_bytes[skb_get_queue_mapping(skb)] += skb->len; sta->tx_packets[skb_get_queue_mapping(skb)]++; - sta->tx_msdu[tid]++; + if (skb_shinfo(skb)->gso_size) + sta->tx_msdu[tid] += + DIV_ROUND_UP(skb->len, skb_shinfo(skb)->gso_size); + else + sta->tx_msdu[tid]++; u64_stats_update_end(&sta->tx_sync); if (fast_tx->pn_offs) { -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html