Changeset 32492


Ignore:
Timestamp:
2012-06-23T19:30:45+02:00 (6 years ago)
Author:
nbd
Message:

ath9k: fix a dynamic WEP related regression

Location:
trunk/package/mac80211/patches
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/mac80211/patches/300-pending_work.patch

    r32491 r32492  
    16821682        if (sc->sc_ah->config.enable_ani) 
    16831683                cal_interval = min(cal_interval, 
     1684--- a/drivers/net/wireless/ath/ath.h 
     1685+++ b/drivers/net/wireless/ath/ath.h 
     1686@@ -143,6 +143,7 @@ struct ath_common { 
     1687        u32 keymax; 
     1688        DECLARE_BITMAP(keymap, ATH_KEYMAX); 
     1689        DECLARE_BITMAP(tkip_keymap, ATH_KEYMAX); 
     1690+       DECLARE_BITMAP(ccmp_keymap, ATH_KEYMAX); 
     1691        enum ath_crypt_caps crypt_caps; 
     1692  
     1693        unsigned int clockrate; 
     1694--- a/drivers/net/wireless/ath/ath9k/recv.c 
     1695+++ b/drivers/net/wireless/ath/ath9k/recv.c 
     1696@@ -785,7 +785,8 @@ static bool ath9k_rx_accept(struct ath_c 
     1697         * descriptor does contain a valid key index. This has been observed 
     1698         * mostly with CCMP encryption. 
     1699         */ 
     1700-       if (rx_stats->rs_keyix == ATH9K_RXKEYIX_INVALID) 
     1701+       if (rx_stats->rs_keyix == ATH9K_RXKEYIX_INVALID || 
     1702+           !test_bit(rx_stats->rs_keyix, common->ccmp_keymap)) 
     1703                rx_stats->rs_status &= ~ATH9K_RXERR_KEYMISS; 
     1704  
     1705        if (!rx_stats->rs_datalen) { 
     1706--- a/drivers/net/wireless/ath/key.c 
     1707+++ b/drivers/net/wireless/ath/key.c 
     1708@@ -556,6 +556,9 @@ int ath_key_config(struct ath_common *co 
     1709                return -EIO; 
     1710  
     1711        set_bit(idx, common->keymap); 
     1712+       if (key->cipher == WLAN_CIPHER_SUITE_CCMP) 
     1713+               set_bit(idx, common->ccmp_keymap); 
     1714+ 
     1715        if (key->cipher == WLAN_CIPHER_SUITE_TKIP) { 
     1716                set_bit(idx + 64, common->keymap); 
     1717                set_bit(idx, common->tkip_keymap); 
     1718@@ -582,6 +585,7 @@ void ath_key_delete(struct ath_common *c 
     1719                return; 
     1720  
     1721        clear_bit(key->hw_key_idx, common->keymap); 
     1722+       clear_bit(key->hw_key_idx, common->ccmp_keymap); 
     1723        if (key->cipher != WLAN_CIPHER_SUITE_TKIP) 
     1724                return; 
     1725  
  • trunk/package/mac80211/patches/400-ath_move_debug_code.patch

    r31322 r32492  
    1313--- a/drivers/net/wireless/ath/ath.h 
    1414+++ b/drivers/net/wireless/ath/ath.h 
    15 @@ -277,13 +277,6 @@ void _ath_dbg(struct ath_common *common, 
     15@@ -278,13 +278,6 @@ void _ath_dbg(struct ath_common *common, 
    1616 #endif /* CONFIG_ATH_DEBUG */ 
    1717  
  • trunk/package/mac80211/patches/522-ath9k_per_chain_signal_strength.patch

    r32449 r32492  
    138138--- a/drivers/net/wireless/ath/ath9k/recv.c 
    139139+++ b/drivers/net/wireless/ath/ath9k/recv.c 
    140 @@ -951,6 +951,7 @@ static int ath9k_rx_skb_preprocess(struc 
     140@@ -952,6 +952,7 @@ static int ath9k_rx_skb_preprocess(struc 
    141141                                   bool *decrypt_error) 
    142142 { 
     
    146146        /* 
    147147         * everything but the rate is checked here, the rate check is done 
    148 @@ -976,6 +977,20 @@ static int ath9k_rx_skb_preprocess(struc 
     148@@ -977,6 +978,20 @@ static int ath9k_rx_skb_preprocess(struc 
    149149        if (rx_stats->rs_moreaggr) 
    150150                rx_status->flag |= RX_FLAG_NO_SIGNAL_VAL; 
Note: See TracChangeset for help on using the changeset viewer.