553-ath9k-dynack-use-authentication-messages-for-late-ac.patch 1.1 KB

123456789101112131415161718192021222324252627
  1. From: Lorenzo Bianconi <[email protected]>
  2. Date: Fri, 2 Nov 2018 21:49:55 +0100
  3. Subject: [PATCH] ath9k: dynack: use authentication messages for 'late' ack
  4. In order to properly support dynack in ad-hoc mode running
  5. wpa_supplicant, take into account authentication frames for
  6. 'late ack' detection. This patch has been tested on devices
  7. mounted on offshore high-voltage stations connected through
  8. ~24Km link
  9. Reported-by: Koen Vandeputte <[email protected]>
  10. Tested-by: Koen Vandeputte <[email protected]>
  11. Signed-off-by: Lorenzo Bianconi <[email protected]>
  12. ---
  13. --- a/drivers/net/wireless/ath/ath9k/dynack.c
  14. +++ b/drivers/net/wireless/ath/ath9k/dynack.c
  15. @@ -187,7 +187,8 @@ void ath_dynack_sample_tx_ts(struct ath_
  16. /* late ACK */
  17. if (ts->ts_status & ATH9K_TXERR_XRETRY) {
  18. if (ieee80211_is_assoc_req(hdr->frame_control) ||
  19. - ieee80211_is_assoc_resp(hdr->frame_control)) {
  20. + ieee80211_is_assoc_resp(hdr->frame_control) ||
  21. + ieee80211_is_auth(hdr->frame_control)) {
  22. ath_dbg(common, DYNACK, "late ack\n");
  23. ath9k_hw_setslottime(ah, (LATEACK_TO - 3) / 2);
  24. ath9k_hw_set_ack_timeout(ah, LATEACK_TO);