diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-08-06 08:18:07 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-08-09 15:58:11 -0400 |
commit | 8fed14085595c703612b5b712ffe114ef0370929 (patch) | |
tree | cf20f55f47cffa2323b9e41ae4b4059be129951f /drivers/net/wireless/ath/ath9k/ath9k.h | |
parent | a1cd94d345a8f68300c8ccd8422434e54199f68d (diff) |
ath9k: fix block ack window tracking check
When a packet has been tracked as part of the BlockAck window and added
to the hardware queue, it can end up back in the TID queue again with
fi->retries still set to 0 (e.g. if the frame was filtered). Keep an
extra bit for the BAW tracking status to fix this corner case.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/ath9k.h')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ath9k.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h index 725515fd5ffe..126f98066f1b 100644 --- a/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h | |||
@@ -211,8 +211,9 @@ struct ath_frame_info { | |||
211 | int framelen; | 211 | int framelen; |
212 | enum ath9k_key_type keytype; | 212 | enum ath9k_key_type keytype; |
213 | u8 keyix; | 213 | u8 keyix; |
214 | u8 retries; | ||
215 | u8 rtscts_rate; | 214 | u8 rtscts_rate; |
215 | u8 retries : 7; | ||
216 | u8 baw_tracked : 1; | ||
216 | }; | 217 | }; |
217 | 218 | ||
218 | struct ath_buf_state { | 219 | struct ath_buf_state { |