[88/93] ath9k: Fix sequence numbers for PAE frames
[Posted February 21, 2010 by corbet]
| From: |
| Greg KH <gregkh-AT-suse.de> |
| To: |
| linux-kernel-AT-vger.kernel.org, stable-AT-kernel.org |
| Subject: |
| [88/93] ath9k: Fix sequence numbers for PAE frames |
| Date: |
| Fri, 19 Feb 2010 08:30:21 -0800 |
| Cc: |
| stable-review-AT-kernel.org, torvalds-AT-linux-foundation.org,
akpm-AT-linux-foundation.org, alan-AT-lxorguk.ukuu.org.uk,
Sujith <Sujith.Manoharan-AT-atheros.com>,
"John W. Linville" <linville-AT-tuxdriver.com> |
| Archive-link: |
| Article, Thread
|
2.6.32-stable review patch. If anyone has any objections, please let us know.
------------------
From: Sujith <Sujith.Manoharan@atheros.com>
commit 6c8afef551fef87a3bf24f8a74c69a7f2f72fc82 upstream.
Currently, PAE frames are not assigned proper sequence numbers.
Since sending PAE frames as part of aggregates breaks
crupto with several APs, they are sent as normal MPDUs.
Fix the seqeuence number issue by updating the frame with the
internal sequence number.
Tested-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/net/wireless/ath/ath9k/xmit.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -1563,7 +1563,7 @@ static int ath_tx_setup_buffer(struct ie
bf->bf_frmlen = skb->len + FCS_LEN - (hdrlen & 3);
- if (conf_is_ht(&sc->hw->conf) && !is_pae(skb))
+ if (conf_is_ht(&sc->hw->conf))
bf->bf_state.bf_type |= BUF_HT;
bf->bf_flags = setup_tx_flags(sc, skb, txctl->txq);
@@ -1648,7 +1648,7 @@ static void ath_tx_start_dma(struct ath_
goto tx_done;
}
- if (tx_info->flags & IEEE80211_TX_CTL_AMPDU) {
+ if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && !is_pae(skb)) {
/*
* Try aggregation if it's a unicast data frame
* and the destination is HT capable.
(
Log in to post comments)