diff options
author | Felix Fietkau <nbd@nbd.name> | 2018-11-13 22:32:13 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-12-13 11:18:54 +0300 |
commit | a2c934fbbd43b5c349157c05374b9598f53a65f1 (patch) | |
tree | 93142c2dc876eafbfd7a50b2981dbc62013a1ab0 /net/mac80211 | |
parent | 9e82abdd0c0341b880f510fc8b19464410912069 (diff) | |
download | linux-a2c934fbbd43b5c349157c05374b9598f53a65f1.tar.xz |
mac80211: ignore tx status for PS stations in ieee80211_tx_status_ext
commit a317e65face482371de30246b6494feb093ff7f9 upstream.
Make it behave like regular ieee80211_tx_status calls, except for the lack of
filtered frame processing.
This fixes spurious low-ack triggered disconnections with powersave clients
connected to an AP.
Fixes: f027c2aca0cf4 ("mac80211: add ieee80211_tx_status_noskb")
Cc: stable@vger.kernel.org
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/status.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/mac80211/status.c b/net/mac80211/status.c index bdf131ed5ce8..35912270087c 100644 --- a/net/mac80211/status.c +++ b/net/mac80211/status.c @@ -953,6 +953,8 @@ void ieee80211_tx_status_ext(struct ieee80211_hw *hw, /* Track when last TDLS packet was ACKed */ if (test_sta_flag(sta, WLAN_STA_TDLS_PEER_AUTH)) sta->status_stats.last_tdls_pkt_time = jiffies; + } else if (test_sta_flag(sta, WLAN_STA_PS_STA)) { + return; } else { ieee80211_lost_packet(sta, info); } |