aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2019-03-03 19:16:03 +0100
committerFelix Fietkau <nbd@nbd.name>2019-03-07 12:50:23 +0100
commitb7001f46085e06a74e4677b44ac55566f66e55aa (patch)
treee74163cd15d7728644e8450e2f468e80fceb7391 /drivers/net/wireless
parentmt76: mt7603: notify mac80211 about buffered frames in ps queue (diff)
downloadlinux-dev-b7001f46085e06a74e4677b44ac55566f66e55aa.tar.xz
linux-dev-b7001f46085e06a74e4677b44ac55566f66e55aa.zip
mt76: mt7603: clear the service period on releasing PS filtered packets
These packets have no txwi entry in the ring, so tracking via tx status does not work. To prevent PS poll requests from being unanswered, end the service period right away Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt7603/main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt7603/main.c b/drivers/net/wireless/mediatek/mt76/mt7603/main.c
index 8da0b8707d24..ea25eff5e81c 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7603/main.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7603/main.c
@@ -416,6 +416,9 @@ mt7603_release_buffered_frames(struct ieee80211_hw *hw,
}
spin_unlock_bh(&dev->ps_lock);
+ if (!skb_queue_empty(&list))
+ ieee80211_sta_eosp(sta);
+
mt7603_ps_tx_list(dev, &list);
if (nframes)