summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-08 18:23:04 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-08-08 18:23:04 +0000
commita7f0882084ec79dd1bcfea8b4543b85a8019153d (patch)
tree1fd527eb061a6cbdfb4406fe53a5900601e7f03c
parent3a60b01ad220dfc8ee538d948ff30e30cee40a6a (diff)
ath9k: fix handling of decryption errors, should improve link stability
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33063 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/mac80211/patches/300-pending_work.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/package/mac80211/patches/300-pending_work.patch b/package/mac80211/patches/300-pending_work.patch
index 97758c496..9addfa040 100644
--- a/package/mac80211/patches/300-pending_work.patch
+++ b/package/mac80211/patches/300-pending_work.patch
@@ -3325,6 +3325,22 @@
}
if (ath_beacon_dtim_pending_cab(skb)) {
+@@ -1044,7 +1044,6 @@ int ath_rx_tasklet(struct ath_softc *sc,
+ struct ieee80211_hw *hw = sc->hw;
+ struct ieee80211_hdr *hdr;
+ int retval;
+- bool decrypt_error = false;
+ struct ath_rx_status rs;
+ enum ath9k_rx_qtype qtype;
+ bool edma = !!(ah->caps.hw_caps & ATH9K_HW_CAP_EDMA);
+@@ -1066,6 +1065,7 @@ int ath_rx_tasklet(struct ath_softc *sc,
+ tsf_lower = tsf & 0xffffffff;
+
+ do {
++ bool decrypt_error = false;
+ /* If handling rx interrupt and flush is in progress => exit */
+ if (test_bit(SC_OP_RXFLUSH, &sc->sc_flags) && (flush == 0))
+ break;
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -29,6 +29,8 @@