ath9k_htc: fix decryption errors
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42530
This commit is contained in:
		@@ -1,3 +1,21 @@
 | 
				
			|||||||
 | 
					commit fb77a822cc68745186b38db7d105ad97e0622152
 | 
				
			||||||
 | 
					Author: Johannes Stezenbach <js@sig21.net>
 | 
				
			||||||
 | 
					Date:   Fri Sep 12 22:36:51 2014 +0200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ath9k_htc: fix random decryption failure
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    In v3.15 the driver stopped to accept network packets after successful
 | 
				
			||||||
 | 
					    authentification, which could be worked around by passing the
 | 
				
			||||||
 | 
					    nohwcrypt=1 module parameter.  This was not reproducible by
 | 
				
			||||||
 | 
					    everyone, and showed random behaviour in some tests.
 | 
				
			||||||
 | 
					    It was caused by an uninitialized variable introduced
 | 
				
			||||||
 | 
					    in 4ed1a8d4a257 ("ath9k_htc: use ath9k_cmn_rx_accept") and
 | 
				
			||||||
 | 
					    used in 341b29b9cd2f ("ath9k_htc: use ath9k_cmn_rx_skb_postprocess").
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=78581
 | 
				
			||||||
 | 
					    Fixes: 341b29b9cd2f ("ath9k_htc: use ath9k_cmn_rx_skb_postprocess")
 | 
				
			||||||
 | 
					    Signed-off-by: Johannes Stezenbach <js@sig21.net>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
commit 11f17631d9bf2a9e910dac7d09ba4581f5693831
 | 
					commit 11f17631d9bf2a9e910dac7d09ba4581f5693831
 | 
				
			||||||
Author: Felix Fietkau <nbd@openwrt.org>
 | 
					Author: Felix Fietkau <nbd@openwrt.org>
 | 
				
			||||||
Date:   Tue Sep 9 09:48:30 2014 +0200
 | 
					Date:   Tue Sep 9 09:48:30 2014 +0200
 | 
				
			||||||
@@ -3291,3 +3309,14 @@ Date:   Mon May 19 21:20:49 2014 +0200
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 #define AR_RTC_9160_PLL_DIV	0x000003ff
 | 
					 #define AR_RTC_9160_PLL_DIV	0x000003ff
 | 
				
			||||||
 #define AR_RTC_9160_PLL_DIV_S   0
 | 
					 #define AR_RTC_9160_PLL_DIV_S   0
 | 
				
			||||||
 | 
					--- a/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
 | 
				
			||||||
 | 
					+++ b/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
 | 
				
			||||||
 | 
					@@ -978,7 +978,7 @@ static bool ath9k_rx_prepare(struct ath9
 | 
				
			||||||
 | 
					 	struct ath_hw *ah = common->ah;
 | 
				
			||||||
 | 
					 	struct ath_htc_rx_status *rxstatus;
 | 
				
			||||||
 | 
					 	struct ath_rx_status rx_stats;
 | 
				
			||||||
 | 
					-	bool decrypt_error;
 | 
				
			||||||
 | 
					+	bool decrypt_error = false;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 	if (skb->len < HTC_RX_FRAME_HEADER_SIZE) {
 | 
				
			||||||
 | 
					 		ath_err(common, "Corrupted RX frame, dropping (len: %d)\n",
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user