mac80211: fix per-TID RX-MSDU counter
authorJohannes Berg <johannes.berg@intel.com>
Fri, 23 Jan 2015 12:23:48 +0000 (13:23 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 23 Jan 2015 12:26:25 +0000 (13:26 +0100)
In the case of non-QoS association, the counter was actually
wrong. The right index isn't security_idx but seqno_idx, as
security_idx will be 0 for data frames, while 16 is needed.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/rx.c

index 3d79d49..ed516ae 100644 (file)
@@ -2310,12 +2310,12 @@ ieee80211_rx_h_data(struct ieee80211_rx_data *rx)
                return RX_DROP_MONITOR;
 
        if (rx->sta) {
-               /* The security index has the same property as needed
+               /* The seqno index has the same property as needed
                 * for the rx_msdu field, i.e. it is IEEE80211_NUM_TIDS
                 * for non-QoS-data frames. Here we know it's a data
                 * frame, so count MSDUs.
                 */
-               rx->sta->rx_msdu[rx->security_idx]++;
+               rx->sta->rx_msdu[rx->seqno_idx]++;
        }
 
        /*