mt76: do not set status->aggr for NULL data frames
authorFelix Fietkau <nbd@nbd.name>
Sat, 27 Jan 2018 15:02:06 +0000 (16:02 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 1 Feb 2018 08:44:01 +0000 (10:44 +0200)
Avoids data connection stalls when the client toggles powersave mode

Fixes: aee5b8cf2477 ("mt76: implement A-MPDU rx reordering in the driver code")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mediatek/mt76/mt76x2_mac.c

index 6c30b5e..7ea3d84 100644 (file)
@@ -341,7 +341,7 @@ int mt76x2_mac_process_rx(struct mt76x2_dev *dev, struct sk_buff *skb,
 
        mt76x2_remove_hdr_pad(skb, pad_len);
 
-       if (rxinfo & MT_RXINFO_BA)
+       if ((rxinfo & MT_RXINFO_BA) && !(rxinfo & MT_RXINFO_NULL))
                status->aggr = true;
 
        if (WARN_ON_ONCE(len > skb->len))