Skip to content

Commit dedf2ec

Browse files
committed
wifi: mt76: fix queue assignment for deauth packets
When running in AP mode and deauthenticating a client that's in powersave mode, the disassoc/deauth packet can get stuck in a tx queue along with other buffered frames. This can fill up hardware queues with frames that are only released after the WTBL slot is reused for another client. Fix this by moving deauth packets to the ALTX queue. Reported-by: Chad Monroe <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Felix Fietkau <[email protected]>
1 parent dc66a12 commit dedf2ec

File tree

1 file changed

+2
-1
lines changed
  • drivers/net/wireless/mediatek/mt76

1 file changed

+2
-1
lines changed

drivers/net/wireless/mediatek/mt76/tx.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -615,7 +615,8 @@ mt76_txq_schedule_pending_wcid(struct mt76_phy *phy, struct mt76_wcid *wcid,
615615
if ((dev->drv->drv_flags & MT_DRV_HW_MGMT_TXQ) &&
616616
!(info->flags & IEEE80211_TX_CTL_HW_80211_ENCAP) &&
617617
!ieee80211_is_data(hdr->frame_control) &&
618-
!ieee80211_is_bufferable_mmpdu(skb))
618+
(!ieee80211_is_bufferable_mmpdu(skb) ||
619+
ieee80211_is_deauth(hdr->frame_control)))
619620
qid = MT_TXQ_PSD;
620621

621622
q = phy->q_tx[qid];

0 commit comments

Comments
 (0)